{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Introduction\n",
    "State notebook purpose here"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-26T00:34:45.649960Z",
     "start_time": "2019-03-26T00:34:44.141982Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>indicator_name</th>\n",
       "      <th>Access to electricity (% of population)</th>\n",
       "      <th>Access to electricity, rural (% of rural population)</th>\n",
       "      <th>Access to electricity, urban (% of urban population)</th>\n",
       "      <th>Adjusted net enrollment rate, primary (% of primary school age children)</th>\n",
       "      <th>Adjusted net enrollment rate, primary, female (% of primary school age children)</th>\n",
       "      <th>Adjusted net enrollment rate, primary, male (% of primary school age children)</th>\n",
       "      <th>Adjusted net national income (annual % growth)</th>\n",
       "      <th>Adjusted net national income (constant 2010 US$)</th>\n",
       "      <th>Adjusted net national income (current US$)</th>\n",
       "      <th>Adjusted net national income per capita (annual % growth)</th>\n",
       "      <th>Adjusted net national income per capita (constant 2010 US$)</th>\n",
       "      <th>Adjusted net national income per capita (current US$)</th>\n",
       "      <th>Adjusted net savings, excluding particulate emission damage (% of GNI)</th>\n",
       "      <th>Adjusted savings: carbon dioxide damage (% of GNI)</th>\n",
       "      <th>Adjusted savings: carbon dioxide damage (current US$)</th>\n",
       "      <th>Adjusted savings: consumption of fixed capital (% of GNI)</th>\n",
       "      <th>Adjusted savings: consumption of fixed capital (current US$)</th>\n",
       "      <th>Adjusted savings: education expenditure (% of GNI)</th>\n",
       "      <th>Adjusted savings: education expenditure (current US$)</th>\n",
       "      <th>Adjusted savings: energy depletion (% of GNI)</th>\n",
       "      <th>Adjusted savings: energy depletion (current US$)</th>\n",
       "      <th>Adjusted savings: gross savings (% of GNI)</th>\n",
       "      <th>Adjusted savings: mineral depletion (% of GNI)</th>\n",
       "      <th>Adjusted savings: mineral depletion (current US$)</th>\n",
       "      <th>Adjusted savings: natural resources depletion (% of GNI)</th>\n",
       "      <th>Adjusted savings: net forest depletion (% of GNI)</th>\n",
       "      <th>Adjusted savings: net forest depletion (current US$)</th>\n",
       "      <th>Adjusted savings: net national savings (% of GNI)</th>\n",
       "      <th>Adjusted savings: net national savings (current US$)</th>\n",
       "      <th>Adolescent fertility rate (births per 1,000 women ages 15-19)</th>\n",
       "      <th>Age dependency ratio (% of working-age population)</th>\n",
       "      <th>Age dependency ratio, old (% of working-age population)</th>\n",
       "      <th>Age dependency ratio, young (% of working-age population)</th>\n",
       "      <th>Agricultural land (% of land area)</th>\n",
       "      <th>Agricultural land (sq. km)</th>\n",
       "      <th>Agricultural machinery, tractors</th>\n",
       "      <th>Agricultural machinery, tractors per 100 sq. km of arable land</th>\n",
       "      <th>Agricultural methane emissions (% of total)</th>\n",
       "      <th>Agricultural methane emissions (thousand metric tons of CO2 equivalent)</th>\n",
       "      <th>Agricultural nitrous oxide emissions (% of total)</th>\n",
       "      <th>Agricultural nitrous oxide emissions (thousand metric tons of CO2 equivalent)</th>\n",
       "      <th>Agricultural raw materials exports (% of merchandise exports)</th>\n",
       "      <th>Agricultural raw materials imports (% of merchandise imports)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (% of GDP)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (annual % growth)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (constant 2010 US$)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (constant LCU)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (current LCU)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added (current US$)</th>\n",
       "      <th>Agriculture, forestry, and fishing, value added per worker (constant 2010 US$)</th>\n",
       "      <th>Air transport, freight (million ton-km)</th>\n",
       "      <th>Air transport, passengers carried</th>\n",
       "      <th>Air transport, registered carrier departures worldwide</th>\n",
       "      <th>Alternative and nuclear energy (% of total energy use)</th>\n",
       "      <th>Aquaculture production (metric tons)</th>\n",
       "      <th>Arable land (% of land area)</th>\n",
       "      <th>Arable land (hectares per person)</th>\n",
       "      <th>Arable land (hectares)</th>\n",
       "      <th>Armed forces personnel (% of total labor force)</th>\n",
       "      <th>Armed forces personnel, total</th>\n",
       "      <th>Arms imports (SIPRI trend indicator values)</th>\n",
       "      <th>Average grace period on new external debt commitments (years)</th>\n",
       "      <th>Average grace period on new external debt commitments, official (years)</th>\n",
       "      <th>Average grace period on new external debt commitments, private (years)</th>\n",
       "      <th>...</th>\n",
       "      <th>Self-employed, female (% of female employment) (modeled ILO estimate)</th>\n",
       "      <th>Self-employed, male (% of male employment) (modeled ILO estimate)</th>\n",
       "      <th>Self-employed, total (% of total employment) (modeled ILO estimate)</th>\n",
       "      <th>Service exports (BoP, current US$)</th>\n",
       "      <th>Service imports (BoP, current US$)</th>\n",
       "      <th>Services, value added (% of GDP)</th>\n",
       "      <th>Services, value added (annual % growth)</th>\n",
       "      <th>Services, value added (constant 2010 US$)</th>\n",
       "      <th>Services, value added (constant LCU)</th>\n",
       "      <th>Services, value added (current LCU)</th>\n",
       "      <th>Services, value added (current US$)</th>\n",
       "      <th>Services, value added per worker (constant 2010 US$)</th>\n",
       "      <th>Short-term debt (% of exports of goods, services and primary income)</th>\n",
       "      <th>Short-term debt (% of total external debt)</th>\n",
       "      <th>Short-term debt (% of total reserves)</th>\n",
       "      <th>Surface area (sq. km)</th>\n",
       "      <th>Survival to age 65, female (% of cohort)</th>\n",
       "      <th>Survival to age 65, male (% of cohort)</th>\n",
       "      <th>Taxes less subsidies on products (constant LCU)</th>\n",
       "      <th>Taxes less subsidies on products (current LCU)</th>\n",
       "      <th>Taxes less subsidies on products (current US$)</th>\n",
       "      <th>Technical cooperation grants (BoP, current US$)</th>\n",
       "      <th>Terms of trade adjustment (constant LCU)</th>\n",
       "      <th>Total amount of debt rescheduled (current US$)</th>\n",
       "      <th>Total change in external debt stocks (current US$)</th>\n",
       "      <th>Total debt service (% of GNI)</th>\n",
       "      <th>Total fisheries production (metric tons)</th>\n",
       "      <th>Total greenhouse gas emissions (kt of CO2 equivalent)</th>\n",
       "      <th>Total natural resources rents (% of GDP)</th>\n",
       "      <th>Total reserves (% of total external debt)</th>\n",
       "      <th>Total reserves (includes gold, current US$)</th>\n",
       "      <th>Total reserves in months of imports</th>\n",
       "      <th>Total reserves minus gold (current US$)</th>\n",
       "      <th>Trade (% of GDP)</th>\n",
       "      <th>Trade in services (% of GDP)</th>\n",
       "      <th>Trademark applications, direct nonresident</th>\n",
       "      <th>Trademark applications, direct resident</th>\n",
       "      <th>Trademark applications, total</th>\n",
       "      <th>Transport services (% of commercial service exports)</th>\n",
       "      <th>Transport services (% of commercial service imports)</th>\n",
       "      <th>Transport services (% of service exports, BoP)</th>\n",
       "      <th>Transport services (% of service imports, BoP)</th>\n",
       "      <th>Travel services (% of commercial service exports)</th>\n",
       "      <th>Travel services (% of commercial service imports)</th>\n",
       "      <th>Travel services (% of service exports, BoP)</th>\n",
       "      <th>Travel services (% of service imports, BoP)</th>\n",
       "      <th>Undisbursed external debt, official creditors (UND, current US$)</th>\n",
       "      <th>Undisbursed external debt, private creditors (UND, current US$)</th>\n",
       "      <th>Undisbursed external debt, total (UND, current US$)</th>\n",
       "      <th>Unemployment, female (% of female labor force) (modeled ILO estimate)</th>\n",
       "      <th>Unemployment, male (% of male labor force) (modeled ILO estimate)</th>\n",
       "      <th>Unemployment, total (% of total labor force) (modeled ILO estimate)</th>\n",
       "      <th>Unemployment, youth female (% of female labor force ages 15-24) (modeled ILO estimate)</th>\n",
       "      <th>Unemployment, youth male (% of male labor force ages 15-24) (modeled ILO estimate)</th>\n",
       "      <th>Unemployment, youth total (% of total labor force ages 15-24) (modeled ILO estimate)</th>\n",
       "      <th>Urban population</th>\n",
       "      <th>Urban population (% of total)</th>\n",
       "      <th>Urban population growth (annual %)</th>\n",
       "      <th>Use of IMF credit (DOD, current US$)</th>\n",
       "      <th>Vulnerable employment, female (% of female employment) (modeled ILO estimate)</th>\n",
       "      <th>Vulnerable employment, male (% of male employment) (modeled ILO estimate)</th>\n",
       "      <th>Vulnerable employment, total (% of total employment) (modeled ILO estimate)</th>\n",
       "      <th>Wage and salaried workers, female (% of female employment) (modeled ILO estimate)</th>\n",
       "      <th>Wage and salaried workers, male (% of male employment) (modeled ILO estimate)</th>\n",
       "      <th>Wage and salaried workers, total (% of total employment) (modeled ILO estimate)</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>Access to electricity (% of population)</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.967760</td>\n",
       "      <td>0.900338</td>\n",
       "      <td>0.778743</td>\n",
       "      <td>0.788319</td>\n",
       "      <td>0.778785</td>\n",
       "      <td>-0.040982</td>\n",
       "      <td>0.164313</td>\n",
       "      <td>0.080233</td>\n",
       "      <td>-0.008385</td>\n",
       "      <td>0.467992</td>\n",
       "      <td>0.452831</td>\n",
       "      <td>0.300685</td>\n",
       "      <td>0.213132</td>\n",
       "      <td>0.117452</td>\n",
       "      <td>0.273084</td>\n",
       "      <td>0.149927</td>\n",
       "      <td>0.111795</td>\n",
       "      <td>0.162033</td>\n",
       "      <td>-0.026653</td>\n",
       "      <td>0.134945</td>\n",
       "      <td>0.273615</td>\n",
       "      <td>-0.142684</td>\n",
       "      <td>0.061323</td>\n",
       "      <td>-0.277651</td>\n",
       "      <td>-0.516037</td>\n",
       "      <td>-0.155885</td>\n",
       "      <td>0.135280</td>\n",
       "      <td>0.122615</td>\n",
       "      <td>-0.753078</td>\n",
       "      <td>-0.815717</td>\n",
       "      <td>0.568068</td>\n",
       "      <td>-0.823038</td>\n",
       "      <td>-0.151445</td>\n",
       "      <td>0.016380</td>\n",
       "      <td>0.150554</td>\n",
       "      <td>0.339583</td>\n",
       "      <td>-0.373394</td>\n",
       "      <td>0.019435</td>\n",
       "      <td>-0.345924</td>\n",
       "      <td>0.018509</td>\n",
       "      <td>-0.395171</td>\n",
       "      <td>-0.068828</td>\n",
       "      <td>-0.740938</td>\n",
       "      <td>-0.059554</td>\n",
       "      <td>0.082937</td>\n",
       "      <td>0.052887</td>\n",
       "      <td>0.052405</td>\n",
       "      <td>0.091760</td>\n",
       "      <td>0.325666</td>\n",
       "      <td>0.151190</td>\n",
       "      <td>0.154554</td>\n",
       "      <td>0.152831</td>\n",
       "      <td>0.308758</td>\n",
       "      <td>0.087754</td>\n",
       "      <td>0.059715</td>\n",
       "      <td>0.011458</td>\n",
       "      <td>0.076666</td>\n",
       "      <td>0.134433</td>\n",
       "      <td>0.077643</td>\n",
       "      <td>0.084582</td>\n",
       "      <td>-0.061842</td>\n",
       "      <td>-0.229851</td>\n",
       "      <td>0.342986</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.791727</td>\n",
       "      <td>-0.762249</td>\n",
       "      <td>-0.785969</td>\n",
       "      <td>0.148503</td>\n",
       "      <td>0.148101</td>\n",
       "      <td>0.489558</td>\n",
       "      <td>-0.095213</td>\n",
       "      <td>0.162039</td>\n",
       "      <td>0.083086</td>\n",
       "      <td>0.068215</td>\n",
       "      <td>0.153152</td>\n",
       "      <td>0.449570</td>\n",
       "      <td>-0.067991</td>\n",
       "      <td>0.261496</td>\n",
       "      <td>-0.094819</td>\n",
       "      <td>0.020513</td>\n",
       "      <td>0.884138</td>\n",
       "      <td>0.794181</td>\n",
       "      <td>0.078323</td>\n",
       "      <td>0.064857</td>\n",
       "      <td>0.214238</td>\n",
       "      <td>0.016230</td>\n",
       "      <td>-0.040191</td>\n",
       "      <td>0.058914</td>\n",
       "      <td>0.096962</td>\n",
       "      <td>0.201450</td>\n",
       "      <td>0.084539</td>\n",
       "      <td>0.097263</td>\n",
       "      <td>-0.312598</td>\n",
       "      <td>0.069057</td>\n",
       "      <td>0.128002</td>\n",
       "      <td>0.086818</td>\n",
       "      <td>0.115966</td>\n",
       "      <td>0.200763</td>\n",
       "      <td>0.126568</td>\n",
       "      <td>0.094728</td>\n",
       "      <td>0.072757</td>\n",
       "      <td>0.090422</td>\n",
       "      <td>0.038891</td>\n",
       "      <td>-0.373567</td>\n",
       "      <td>0.131826</td>\n",
       "      <td>-0.314060</td>\n",
       "      <td>-0.065887</td>\n",
       "      <td>0.238993</td>\n",
       "      <td>-0.001109</td>\n",
       "      <td>0.273434</td>\n",
       "      <td>0.097864</td>\n",
       "      <td>0.140708</td>\n",
       "      <td>0.107847</td>\n",
       "      <td>0.101278</td>\n",
       "      <td>0.117717</td>\n",
       "      <td>0.100356</td>\n",
       "      <td>0.219540</td>\n",
       "      <td>0.220289</td>\n",
       "      <td>0.218698</td>\n",
       "      <td>0.069052</td>\n",
       "      <td>0.680238</td>\n",
       "      <td>-0.570946</td>\n",
       "      <td>0.130843</td>\n",
       "      <td>-0.792334</td>\n",
       "      <td>-0.774618</td>\n",
       "      <td>-0.793262</td>\n",
       "      <td>0.791727</td>\n",
       "      <td>0.762249</td>\n",
       "      <td>0.785969</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Access to electricity, rural (% of rural popul...</td>\n",
       "      <td>0.967760</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.815735</td>\n",
       "      <td>0.710961</td>\n",
       "      <td>0.727187</td>\n",
       "      <td>0.714469</td>\n",
       "      <td>-0.041588</td>\n",
       "      <td>0.157529</td>\n",
       "      <td>0.054557</td>\n",
       "      <td>-0.007615</td>\n",
       "      <td>0.497899</td>\n",
       "      <td>0.476476</td>\n",
       "      <td>0.246278</td>\n",
       "      <td>0.178954</td>\n",
       "      <td>0.126030</td>\n",
       "      <td>0.284193</td>\n",
       "      <td>0.161879</td>\n",
       "      <td>0.082516</td>\n",
       "      <td>0.173460</td>\n",
       "      <td>-0.070043</td>\n",
       "      <td>0.138128</td>\n",
       "      <td>0.206564</td>\n",
       "      <td>-0.177359</td>\n",
       "      <td>0.060857</td>\n",
       "      <td>-0.280963</td>\n",
       "      <td>-0.457900</td>\n",
       "      <td>-0.170948</td>\n",
       "      <td>0.061166</td>\n",
       "      <td>0.126798</td>\n",
       "      <td>-0.764386</td>\n",
       "      <td>-0.804982</td>\n",
       "      <td>0.593037</td>\n",
       "      <td>-0.823623</td>\n",
       "      <td>-0.137236</td>\n",
       "      <td>-0.007659</td>\n",
       "      <td>0.113987</td>\n",
       "      <td>0.350716</td>\n",
       "      <td>-0.322877</td>\n",
       "      <td>-0.014108</td>\n",
       "      <td>-0.310214</td>\n",
       "      <td>-0.006246</td>\n",
       "      <td>-0.375548</td>\n",
       "      <td>-0.035783</td>\n",
       "      <td>-0.663840</td>\n",
       "      <td>-0.073352</td>\n",
       "      <td>0.053009</td>\n",
       "      <td>0.046368</td>\n",
       "      <td>0.051956</td>\n",
       "      <td>0.064805</td>\n",
       "      <td>0.347843</td>\n",
       "      <td>0.145052</td>\n",
       "      <td>0.146155</td>\n",
       "      <td>0.144586</td>\n",
       "      <td>0.327551</td>\n",
       "      <td>0.067831</td>\n",
       "      <td>0.080188</td>\n",
       "      <td>0.049162</td>\n",
       "      <td>0.070840</td>\n",
       "      <td>0.142566</td>\n",
       "      <td>0.042607</td>\n",
       "      <td>0.051362</td>\n",
       "      <td>-0.047910</td>\n",
       "      <td>-0.214207</td>\n",
       "      <td>0.299903</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.790674</td>\n",
       "      <td>-0.750135</td>\n",
       "      <td>-0.779741</td>\n",
       "      <td>0.147003</td>\n",
       "      <td>0.144662</td>\n",
       "      <td>0.440017</td>\n",
       "      <td>-0.128833</td>\n",
       "      <td>0.170720</td>\n",
       "      <td>0.079684</td>\n",
       "      <td>0.069943</td>\n",
       "      <td>0.148404</td>\n",
       "      <td>0.465658</td>\n",
       "      <td>-0.053242</td>\n",
       "      <td>0.254408</td>\n",
       "      <td>-0.084619</td>\n",
       "      <td>0.003619</td>\n",
       "      <td>0.872854</td>\n",
       "      <td>0.769268</td>\n",
       "      <td>0.079490</td>\n",
       "      <td>0.066764</td>\n",
       "      <td>0.223254</td>\n",
       "      <td>0.004896</td>\n",
       "      <td>-0.040225</td>\n",
       "      <td>0.040867</td>\n",
       "      <td>0.087680</td>\n",
       "      <td>0.217893</td>\n",
       "      <td>0.059640</td>\n",
       "      <td>0.073193</td>\n",
       "      <td>-0.278328</td>\n",
       "      <td>0.053087</td>\n",
       "      <td>0.130154</td>\n",
       "      <td>0.047759</td>\n",
       "      <td>0.117078</td>\n",
       "      <td>0.185101</td>\n",
       "      <td>0.135614</td>\n",
       "      <td>0.069746</td>\n",
       "      <td>0.051621</td>\n",
       "      <td>0.069562</td>\n",
       "      <td>0.047384</td>\n",
       "      <td>-0.397744</td>\n",
       "      <td>0.116939</td>\n",
       "      <td>-0.355709</td>\n",
       "      <td>-0.093570</td>\n",
       "      <td>0.250591</td>\n",
       "      <td>-0.052648</td>\n",
       "      <td>0.282557</td>\n",
       "      <td>0.071293</td>\n",
       "      <td>0.111057</td>\n",
       "      <td>0.080088</td>\n",
       "      <td>0.086720</td>\n",
       "      <td>0.123460</td>\n",
       "      <td>0.098469</td>\n",
       "      <td>0.195224</td>\n",
       "      <td>0.224138</td>\n",
       "      <td>0.210252</td>\n",
       "      <td>0.039789</td>\n",
       "      <td>0.601805</td>\n",
       "      <td>-0.565753</td>\n",
       "      <td>0.112623</td>\n",
       "      <td>-0.790501</td>\n",
       "      <td>-0.763866</td>\n",
       "      <td>-0.786949</td>\n",
       "      <td>0.790674</td>\n",
       "      <td>0.750135</td>\n",
       "      <td>0.779741</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Access to electricity, urban (% of urban popul...</td>\n",
       "      <td>0.900338</td>\n",
       "      <td>0.815735</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.733129</td>\n",
       "      <td>0.724329</td>\n",
       "      <td>0.737436</td>\n",
       "      <td>-0.031816</td>\n",
       "      <td>0.154175</td>\n",
       "      <td>0.089289</td>\n",
       "      <td>-0.003022</td>\n",
       "      <td>0.368258</td>\n",
       "      <td>0.349837</td>\n",
       "      <td>0.331598</td>\n",
       "      <td>0.206007</td>\n",
       "      <td>0.097781</td>\n",
       "      <td>0.166410</td>\n",
       "      <td>0.118767</td>\n",
       "      <td>0.108439</td>\n",
       "      <td>0.128157</td>\n",
       "      <td>-0.027611</td>\n",
       "      <td>0.112921</td>\n",
       "      <td>0.276175</td>\n",
       "      <td>-0.081406</td>\n",
       "      <td>0.052398</td>\n",
       "      <td>-0.241416</td>\n",
       "      <td>-0.462255</td>\n",
       "      <td>-0.068212</td>\n",
       "      <td>0.184181</td>\n",
       "      <td>0.104703</td>\n",
       "      <td>-0.677207</td>\n",
       "      <td>-0.690376</td>\n",
       "      <td>0.443348</td>\n",
       "      <td>-0.686689</td>\n",
       "      <td>-0.142623</td>\n",
       "      <td>0.057905</td>\n",
       "      <td>0.155303</td>\n",
       "      <td>0.263925</td>\n",
       "      <td>-0.274161</td>\n",
       "      <td>0.073052</td>\n",
       "      <td>-0.291382</td>\n",
       "      <td>0.064858</td>\n",
       "      <td>-0.428305</td>\n",
       "      <td>-0.066750</td>\n",
       "      <td>-0.657957</td>\n",
       "      <td>-0.044881</td>\n",
       "      <td>0.114699</td>\n",
       "      <td>0.060677</td>\n",
       "      <td>0.047973</td>\n",
       "      <td>0.109878</td>\n",
       "      <td>0.248796</td>\n",
       "      <td>0.132771</td>\n",
       "      <td>0.138262</td>\n",
       "      <td>0.137614</td>\n",
       "      <td>0.235944</td>\n",
       "      <td>0.097383</td>\n",
       "      <td>0.075579</td>\n",
       "      <td>-0.014718</td>\n",
       "      <td>0.088693</td>\n",
       "      <td>0.094327</td>\n",
       "      <td>0.113816</td>\n",
       "      <td>0.123744</td>\n",
       "      <td>-0.041577</td>\n",
       "      <td>-0.171477</td>\n",
       "      <td>0.295788</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.638469</td>\n",
       "      <td>-0.612671</td>\n",
       "      <td>-0.634385</td>\n",
       "      <td>0.131355</td>\n",
       "      <td>0.133255</td>\n",
       "      <td>0.412979</td>\n",
       "      <td>-0.052931</td>\n",
       "      <td>0.130609</td>\n",
       "      <td>0.078862</td>\n",
       "      <td>0.058456</td>\n",
       "      <td>0.136064</td>\n",
       "      <td>0.351330</td>\n",
       "      <td>-0.085136</td>\n",
       "      <td>0.171845</td>\n",
       "      <td>-0.163707</td>\n",
       "      <td>0.057812</td>\n",
       "      <td>0.789128</td>\n",
       "      <td>0.719375</td>\n",
       "      <td>0.066413</td>\n",
       "      <td>0.054298</td>\n",
       "      <td>0.173104</td>\n",
       "      <td>0.036701</td>\n",
       "      <td>-0.033509</td>\n",
       "      <td>0.072280</td>\n",
       "      <td>0.089999</td>\n",
       "      <td>0.139069</td>\n",
       "      <td>0.105722</td>\n",
       "      <td>0.117620</td>\n",
       "      <td>-0.314668</td>\n",
       "      <td>0.037412</td>\n",
       "      <td>0.101960</td>\n",
       "      <td>0.086292</td>\n",
       "      <td>0.092608</td>\n",
       "      <td>0.160571</td>\n",
       "      <td>0.078418</td>\n",
       "      <td>0.111946</td>\n",
       "      <td>0.088856</td>\n",
       "      <td>0.105551</td>\n",
       "      <td>0.039999</td>\n",
       "      <td>-0.272625</td>\n",
       "      <td>0.141242</td>\n",
       "      <td>-0.213146</td>\n",
       "      <td>-0.104067</td>\n",
       "      <td>0.150610</td>\n",
       "      <td>-0.035177</td>\n",
       "      <td>0.180917</td>\n",
       "      <td>0.116864</td>\n",
       "      <td>0.145090</td>\n",
       "      <td>0.124721</td>\n",
       "      <td>0.026533</td>\n",
       "      <td>0.016846</td>\n",
       "      <td>0.004535</td>\n",
       "      <td>0.140961</td>\n",
       "      <td>0.117002</td>\n",
       "      <td>0.122609</td>\n",
       "      <td>0.101500</td>\n",
       "      <td>0.523818</td>\n",
       "      <td>-0.447963</td>\n",
       "      <td>0.129015</td>\n",
       "      <td>-0.637635</td>\n",
       "      <td>-0.620773</td>\n",
       "      <td>-0.639211</td>\n",
       "      <td>0.638469</td>\n",
       "      <td>0.612671</td>\n",
       "      <td>0.634385</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Adjusted net enrollment rate, primary (% of pr...</td>\n",
       "      <td>0.778743</td>\n",
       "      <td>0.710961</td>\n",
       "      <td>0.733129</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.986786</td>\n",
       "      <td>0.979660</td>\n",
       "      <td>-0.043278</td>\n",
       "      <td>0.146440</td>\n",
       "      <td>0.054514</td>\n",
       "      <td>-0.008870</td>\n",
       "      <td>0.424795</td>\n",
       "      <td>0.383135</td>\n",
       "      <td>0.181438</td>\n",
       "      <td>0.171375</td>\n",
       "      <td>0.133369</td>\n",
       "      <td>0.341817</td>\n",
       "      <td>0.139552</td>\n",
       "      <td>0.281205</td>\n",
       "      <td>0.136543</td>\n",
       "      <td>-0.040812</td>\n",
       "      <td>0.122070</td>\n",
       "      <td>0.194621</td>\n",
       "      <td>-0.010766</td>\n",
       "      <td>0.099075</td>\n",
       "      <td>-0.219820</td>\n",
       "      <td>-0.371080</td>\n",
       "      <td>-0.062407</td>\n",
       "      <td>0.039560</td>\n",
       "      <td>0.187416</td>\n",
       "      <td>-0.723223</td>\n",
       "      <td>-0.697960</td>\n",
       "      <td>0.486711</td>\n",
       "      <td>-0.703345</td>\n",
       "      <td>-0.075241</td>\n",
       "      <td>-0.024204</td>\n",
       "      <td>0.194741</td>\n",
       "      <td>0.326738</td>\n",
       "      <td>-0.264018</td>\n",
       "      <td>-0.000853</td>\n",
       "      <td>-0.304035</td>\n",
       "      <td>0.008118</td>\n",
       "      <td>-0.378115</td>\n",
       "      <td>-0.068011</td>\n",
       "      <td>-0.661277</td>\n",
       "      <td>-0.056453</td>\n",
       "      <td>0.056657</td>\n",
       "      <td>0.060361</td>\n",
       "      <td>0.053565</td>\n",
       "      <td>0.092389</td>\n",
       "      <td>0.296955</td>\n",
       "      <td>0.152870</td>\n",
       "      <td>0.159765</td>\n",
       "      <td>0.153873</td>\n",
       "      <td>0.326562</td>\n",
       "      <td>0.105604</td>\n",
       "      <td>0.151689</td>\n",
       "      <td>-0.038088</td>\n",
       "      <td>0.090317</td>\n",
       "      <td>0.007147</td>\n",
       "      <td>0.040852</td>\n",
       "      <td>-0.038999</td>\n",
       "      <td>-0.082783</td>\n",
       "      <td>-0.306119</td>\n",
       "      <td>0.267094</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.612831</td>\n",
       "      <td>-0.603168</td>\n",
       "      <td>-0.612722</td>\n",
       "      <td>0.145752</td>\n",
       "      <td>0.143817</td>\n",
       "      <td>0.467512</td>\n",
       "      <td>-0.062671</td>\n",
       "      <td>0.140381</td>\n",
       "      <td>0.079662</td>\n",
       "      <td>0.068434</td>\n",
       "      <td>0.155935</td>\n",
       "      <td>0.387721</td>\n",
       "      <td>-0.104080</td>\n",
       "      <td>0.222250</td>\n",
       "      <td>-0.049695</td>\n",
       "      <td>-0.028384</td>\n",
       "      <td>0.807704</td>\n",
       "      <td>0.742608</td>\n",
       "      <td>0.069702</td>\n",
       "      <td>0.064036</td>\n",
       "      <td>0.196931</td>\n",
       "      <td>0.013903</td>\n",
       "      <td>0.013865</td>\n",
       "      <td>0.034723</td>\n",
       "      <td>0.094920</td>\n",
       "      <td>0.218278</td>\n",
       "      <td>0.105137</td>\n",
       "      <td>0.079983</td>\n",
       "      <td>-0.256604</td>\n",
       "      <td>0.104301</td>\n",
       "      <td>0.164289</td>\n",
       "      <td>0.047826</td>\n",
       "      <td>0.149158</td>\n",
       "      <td>0.185993</td>\n",
       "      <td>0.113935</td>\n",
       "      <td>0.098824</td>\n",
       "      <td>0.094421</td>\n",
       "      <td>0.103538</td>\n",
       "      <td>-0.113182</td>\n",
       "      <td>-0.378042</td>\n",
       "      <td>0.004737</td>\n",
       "      <td>-0.276108</td>\n",
       "      <td>-0.003964</td>\n",
       "      <td>0.203914</td>\n",
       "      <td>0.056891</td>\n",
       "      <td>0.246905</td>\n",
       "      <td>0.095328</td>\n",
       "      <td>0.109466</td>\n",
       "      <td>0.100722</td>\n",
       "      <td>0.022853</td>\n",
       "      <td>0.059954</td>\n",
       "      <td>0.037299</td>\n",
       "      <td>0.141466</td>\n",
       "      <td>0.168559</td>\n",
       "      <td>0.157653</td>\n",
       "      <td>0.083084</td>\n",
       "      <td>0.579354</td>\n",
       "      <td>-0.582496</td>\n",
       "      <td>0.120715</td>\n",
       "      <td>-0.613678</td>\n",
       "      <td>-0.611295</td>\n",
       "      <td>-0.617159</td>\n",
       "      <td>0.612831</td>\n",
       "      <td>0.603168</td>\n",
       "      <td>0.612722</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Adjusted net enrollment rate, primary, female ...</td>\n",
       "      <td>0.788319</td>\n",
       "      <td>0.727187</td>\n",
       "      <td>0.724329</td>\n",
       "      <td>0.986786</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.934241</td>\n",
       "      <td>-0.048493</td>\n",
       "      <td>0.157943</td>\n",
       "      <td>0.052355</td>\n",
       "      <td>-0.013479</td>\n",
       "      <td>0.439902</td>\n",
       "      <td>0.402792</td>\n",
       "      <td>0.178952</td>\n",
       "      <td>0.189117</td>\n",
       "      <td>0.139185</td>\n",
       "      <td>0.358926</td>\n",
       "      <td>0.141666</td>\n",
       "      <td>0.309653</td>\n",
       "      <td>0.143333</td>\n",
       "      <td>-0.049903</td>\n",
       "      <td>0.125167</td>\n",
       "      <td>0.201943</td>\n",
       "      <td>0.020420</td>\n",
       "      <td>0.111724</td>\n",
       "      <td>-0.210799</td>\n",
       "      <td>-0.352545</td>\n",
       "      <td>-0.059250</td>\n",
       "      <td>0.035615</td>\n",
       "      <td>0.190948</td>\n",
       "      <td>-0.731950</td>\n",
       "      <td>-0.726983</td>\n",
       "      <td>0.508373</td>\n",
       "      <td>-0.732711</td>\n",
       "      <td>-0.065738</td>\n",
       "      <td>-0.029544</td>\n",
       "      <td>0.215352</td>\n",
       "      <td>0.359209</td>\n",
       "      <td>-0.257617</td>\n",
       "      <td>-0.015972</td>\n",
       "      <td>-0.298082</td>\n",
       "      <td>0.003919</td>\n",
       "      <td>-0.402923</td>\n",
       "      <td>-0.118220</td>\n",
       "      <td>-0.687455</td>\n",
       "      <td>-0.071067</td>\n",
       "      <td>0.052911</td>\n",
       "      <td>0.043272</td>\n",
       "      <td>0.039616</td>\n",
       "      <td>0.099436</td>\n",
       "      <td>0.302401</td>\n",
       "      <td>0.168348</td>\n",
       "      <td>0.174634</td>\n",
       "      <td>0.168330</td>\n",
       "      <td>0.336953</td>\n",
       "      <td>0.118123</td>\n",
       "      <td>0.123931</td>\n",
       "      <td>-0.039366</td>\n",
       "      <td>0.077602</td>\n",
       "      <td>-0.018578</td>\n",
       "      <td>0.035569</td>\n",
       "      <td>-0.061950</td>\n",
       "      <td>-0.046145</td>\n",
       "      <td>-0.299525</td>\n",
       "      <td>0.284926</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.649772</td>\n",
       "      <td>-0.639764</td>\n",
       "      <td>-0.649406</td>\n",
       "      <td>0.160246</td>\n",
       "      <td>0.156929</td>\n",
       "      <td>0.482209</td>\n",
       "      <td>-0.048860</td>\n",
       "      <td>0.145967</td>\n",
       "      <td>0.062230</td>\n",
       "      <td>0.057727</td>\n",
       "      <td>0.166750</td>\n",
       "      <td>0.396028</td>\n",
       "      <td>-0.082077</td>\n",
       "      <td>0.244498</td>\n",
       "      <td>-0.046021</td>\n",
       "      <td>-0.038213</td>\n",
       "      <td>0.819346</td>\n",
       "      <td>0.748711</td>\n",
       "      <td>0.066098</td>\n",
       "      <td>0.058439</td>\n",
       "      <td>0.202800</td>\n",
       "      <td>0.009741</td>\n",
       "      <td>0.014190</td>\n",
       "      <td>0.032908</td>\n",
       "      <td>0.107950</td>\n",
       "      <td>0.237039</td>\n",
       "      <td>0.112658</td>\n",
       "      <td>0.083325</td>\n",
       "      <td>-0.255822</td>\n",
       "      <td>0.137900</td>\n",
       "      <td>0.167890</td>\n",
       "      <td>0.058591</td>\n",
       "      <td>0.155298</td>\n",
       "      <td>0.230228</td>\n",
       "      <td>0.138319</td>\n",
       "      <td>0.116490</td>\n",
       "      <td>0.112381</td>\n",
       "      <td>0.120923</td>\n",
       "      <td>-0.111071</td>\n",
       "      <td>-0.436075</td>\n",
       "      <td>0.001679</td>\n",
       "      <td>-0.324034</td>\n",
       "      <td>0.004212</td>\n",
       "      <td>0.256274</td>\n",
       "      <td>0.064690</td>\n",
       "      <td>0.299591</td>\n",
       "      <td>0.098413</td>\n",
       "      <td>0.102713</td>\n",
       "      <td>0.102086</td>\n",
       "      <td>0.038924</td>\n",
       "      <td>0.082295</td>\n",
       "      <td>0.062243</td>\n",
       "      <td>0.165724</td>\n",
       "      <td>0.188684</td>\n",
       "      <td>0.182778</td>\n",
       "      <td>0.084568</td>\n",
       "      <td>0.608055</td>\n",
       "      <td>-0.597672</td>\n",
       "      <td>0.129998</td>\n",
       "      <td>-0.651126</td>\n",
       "      <td>-0.645804</td>\n",
       "      <td>-0.652258</td>\n",
       "      <td>0.649772</td>\n",
       "      <td>0.639764</td>\n",
       "      <td>0.649406</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                      indicator_name                                       ...                                         Wage and salaried workers, total (% of total employment) (modeled ILO estimate)\n",
       "0            Access to electricity (% of population)                                       ...                                                                                  0.785969                              \n",
       "1  Access to electricity, rural (% of rural popul...                                       ...                                                                                  0.779741                              \n",
       "2  Access to electricity, urban (% of urban popul...                                       ...                                                                                  0.634385                              \n",
       "3  Adjusted net enrollment rate, primary (% of pr...                                       ...                                                                                  0.612722                              \n",
       "4  Adjusted net enrollment rate, primary, female ...                                       ...                                                                                  0.649406                              \n",
       "\n",
       "[5 rows x 838 columns]"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "df = pd.read_csv('C:/Users/willk/Downloads/corrs.csv')\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Imports\n",
    "Import libraries and write settings here."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:03:54.054173Z",
     "start_time": "2019-03-08T14:03:52.706358Z"
    }
   },
   "outputs": [],
   "source": [
    "import datashader as ds"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:05:09.293561Z",
     "start_time": "2019-03-08T14:05:09.179204Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['vessels', 'fishing_vessels', 'fishing_effort_by_vessel', 'fishing_effort']"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sqlalchemy import create_engine\n",
    "\n",
    "engine = create_engine('postgres://localhost:5432/global_fishing_watch')\n",
    "engine.table_names()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:23:39.182452Z",
     "start_time": "2019-03-08T14:23:38.539618Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>lat_bin</th>\n",
       "      <th>lon_bin</th>\n",
       "      <th>flag</th>\n",
       "      <th>geartype</th>\n",
       "      <th>vessel_hours</th>\n",
       "      <th>fishing_hours</th>\n",
       "      <th>mmsi_present</th>\n",
       "      <th>lon</th>\n",
       "      <th>lat</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2779</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>fixed_gear</td>\n",
       "      <td>2.463611</td>\n",
       "      <td>2.333472</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>27.79</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3648</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>trawlers</td>\n",
       "      <td>3.925278</td>\n",
       "      <td>3.645694</td>\n",
       "      <td>7</td>\n",
       "      <td>121.26</td>\n",
       "      <td>36.48</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3937</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>fixed_gear</td>\n",
       "      <td>0.351250</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>39.37</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3645</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>trawlers</td>\n",
       "      <td>2.169444</td>\n",
       "      <td>2.169444</td>\n",
       "      <td>4</td>\n",
       "      <td>121.26</td>\n",
       "      <td>36.45</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2791</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>purse_seines</td>\n",
       "      <td>0.128889</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>27.91</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        date  lat_bin  lon_bin flag      geartype  vessel_hours  \\\n",
       "0 2016-12-20     2779    12126  CHN    fixed_gear      2.463611   \n",
       "1 2016-12-20     3648    12126  CHN      trawlers      3.925278   \n",
       "2 2016-12-20     3937    12126  CHN    fixed_gear      0.351250   \n",
       "3 2016-12-20     3645    12126  CHN      trawlers      2.169444   \n",
       "4 2016-12-20     2791    12126  CHN  purse_seines      0.128889   \n",
       "\n",
       "   fishing_hours  mmsi_present     lon    lat  \n",
       "0       2.333472             1  121.26  27.79  \n",
       "1       3.645694             7  121.26  36.48  \n",
       "2       0.000000             1  121.26  39.37  \n",
       "3       2.169444             4  121.26  36.45  \n",
       "4       0.000000             1  121.26  27.91  "
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_sql(\"SELECT * FROM fishing_effort LIMIT 100000\", \n",
    "                 engine, parse_dates=['date'])\n",
    "df['lon'] = df['lon_bin'] / 100\n",
    "df['lat'] = df['lat_bin'] / 100\n",
    "\n",
    "\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:36:08.049128Z",
     "start_time": "2019-03-08T14:36:07.998005Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>lat_bin</th>\n",
       "      <th>lon_bin</th>\n",
       "      <th>flag</th>\n",
       "      <th>geartype</th>\n",
       "      <th>vessel_hours</th>\n",
       "      <th>fishing_hours</th>\n",
       "      <th>mmsi_present</th>\n",
       "      <th>lon</th>\n",
       "      <th>lat</th>\n",
       "      <th>x</th>\n",
       "      <th>y</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2779</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>fixed_gear</td>\n",
       "      <td>2.463611</td>\n",
       "      <td>2.333472</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>27.79</td>\n",
       "      <td>1.349860e+07</td>\n",
       "      <td>3.222523e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3648</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>trawlers</td>\n",
       "      <td>3.925278</td>\n",
       "      <td>3.645694</td>\n",
       "      <td>7</td>\n",
       "      <td>121.26</td>\n",
       "      <td>36.48</td>\n",
       "      <td>1.349860e+07</td>\n",
       "      <td>4.366871e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3937</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>fixed_gear</td>\n",
       "      <td>0.351250</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>39.37</td>\n",
       "      <td>1.349860e+07</td>\n",
       "      <td>4.774810e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>3645</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>trawlers</td>\n",
       "      <td>2.169444</td>\n",
       "      <td>2.169444</td>\n",
       "      <td>4</td>\n",
       "      <td>121.26</td>\n",
       "      <td>36.45</td>\n",
       "      <td>1.349860e+07</td>\n",
       "      <td>4.362719e+06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2016-12-20</td>\n",
       "      <td>2791</td>\n",
       "      <td>12126</td>\n",
       "      <td>CHN</td>\n",
       "      <td>purse_seines</td>\n",
       "      <td>0.128889</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1</td>\n",
       "      <td>121.26</td>\n",
       "      <td>27.91</td>\n",
       "      <td>1.349860e+07</td>\n",
       "      <td>3.237632e+06</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        date  lat_bin  lon_bin flag      geartype  vessel_hours  \\\n",
       "0 2016-12-20     2779    12126  CHN    fixed_gear      2.463611   \n",
       "1 2016-12-20     3648    12126  CHN      trawlers      3.925278   \n",
       "2 2016-12-20     3937    12126  CHN    fixed_gear      0.351250   \n",
       "3 2016-12-20     3645    12126  CHN      trawlers      2.169444   \n",
       "4 2016-12-20     2791    12126  CHN  purse_seines      0.128889   \n",
       "\n",
       "   fishing_hours  mmsi_present     lon    lat             x             y  \n",
       "0       2.333472             1  121.26  27.79  1.349860e+07  3.222523e+06  \n",
       "1       3.645694             7  121.26  36.48  1.349860e+07  4.366871e+06  \n",
       "2       0.000000             1  121.26  39.37  1.349860e+07  4.774810e+06  \n",
       "3       2.169444             4  121.26  36.45  1.349860e+07  4.362719e+06  \n",
       "4       0.000000             1  121.26  27.91  1.349860e+07  3.237632e+06  "
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from datashader.utils import lnglat_to_meters\n",
    "import datashader.transfer_functions as tf\n",
    "\n",
    "df['x'], df['y'] = lnglat_to_meters(df['lon'], df['lat'])\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:36:32.187684Z",
     "start_time": "2019-03-08T14:36:31.485728Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+gAAAH0CAYAAACuKActAABFMUlEQVR4nO3dd5icVdk44GdmWzYFCJ0AAgExIPqpiCLqZ/3pp5/6qbErCFiwgigWrKhYaNKkBkJCEoqwNiz0XpKQBilsemXpIT3Zen5/4IbdzW6yfcre93VxkZ3yzpmZd845z/ucEgEAQJ+77K4F6ar7F6dclwOA/JXNdQEAAAaC1BTx5f8+OJPrcgCQvwToAAD9oLRctwuA7dNSAAD0gy0b6+O6WSsMcQcAAIBcq6quEaAD0CEZdACAfiRIBwAAAAAAAChmV963SFYYAHrIEHcAoMfsHdY1hrkD0B4BOgDQY5VDy3JdhD4loAYAAIA8IEAHAACAIiXoBwAAgC4STAMAAEARE/gDAABAF/RlIC1IBwAAAAAAAKBw9HWWWxYdgAj7oAMAAAAAwMBxxT0L09UPLi7ITLEMNwD9oTTXBQAAituV9y1K5eUlUV5ZEmue25zr4nTL6FEjMv3xOlXVNam/XguA/CNABwD61G57DY4Xnt4Ux7/loIINPAXOAAAAkAcMcQcAAIABxsUAAAAAAAAAAPKXrDYAAAAMQC4IAAAAAAAAAJCfZLQB6A/ZXBcAAIDWXBAAAAAAAAAAID/JaAPQHwxxBwDohP4O0l0UAAAAgDwgQAcAAAAAAAAgPxniDgAAAAOQAB0AAAAAAACA/CWrDUBfss0aAAAAAAAAAAAA0EVV1TXJUHcAAADIE4J0AHpbJtcFAAAoRG0D9NGjRuhXAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPYxf+uThffWp1yXQ4AAAAY8MY+tCSNuW+RIB0AAABypaq6RmAOQL/K5roAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0EpVdU2ycjsAAAAAAAAAA5vsOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEXo4lur0+V3LUi5LgcAhS+b6wIAABSy2s2N8eLzW+Lsm2cL0gEAACDXzrpJgA5Az8igAwD00GkXTk4ppThj3AxBOgAAAOSD757/iCAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIA+UlVdk3JdBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAINeqqmtSrssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQF+oqq5JuS4DAAAAAAAAAAAAAAAAAAAAAAAAAHnIgnUAAAD0O8EoAAAA0O+qqmvSJXfMd1ECgAEpm+sCAAAy5S01NfooAAAA6CdV1TVJUN51PjMAillprgsAALAjzYH56FEjMrkuCwD0FQE6AJD3BOYADATmoANADhmyDQA0E6ADAAXD3H0AAAD6xKQZKwSbXSA4BwAAIK8d+/07B0TgKkAHoJhZcAUACsQlt89PLz67OfY+YFgM36OyaBZOa7lC+9k3z04/+MRrtnlfLQPzYnnfANCWBg4AClCxbTvW/H6WzFsd3//4EZkdZcqL5X0DQEsaNwDIU9c/tjK9+Nzm+MZ7Dx0w7fWOMuUX31qddtm9MgYPLROkA1B0rOIOAHlo/JSlqW5LY6SmjhPJLYPZsQ8tKYq52aNHjchsL/DeeddBsX5NbSx94sX+LBYA9AsBOgDkkUkzlqerHlic6mobY+jO5fHN972q3WC1qromtQxk67Y0xmkXTi6KIL1Ze8Pch+xUHnvtNzTKK7IWjAMAAKBvfPj4W9Jldy3YGnR2NwB95WvHFkXg2t6e5y1va/53y8c0/33lvYuK4jMAAAAgx9oLTvvydfI1G91RkN7y/xERf7xtfqvHtB3yP+Y+ATsA+c8QdwAY4PJ5sbXmsnUUpDcrK8/G+bfMS2PuX5SuemBxKqsoafWYy38xNVqOTgCAfJS3DTIADGQ72kat7Rz0YtbyvY65f1HKZjOxy+6t94GfNGP5S4vqRUTtpob4+gBa+R6A4iGDDgD9rKPh5DvaYqyrr9GVYev5OsQ9ovVnkYlMpNT6tqrqmrR5Y0PstOugOPGYkRnBOQCFSoAOAP2so+C7+farHlicrn10WWpqbGr3+dc/tjJtWFvbqdfobKCez9n4luVvbGyK8jbD10ePGpEZvkdlbgoHAL0obxtjABhoqqpr0prnN0dERFl5STQ1pSgrz8bn33BAq/b6upkr0pZNDXHiW0cOyHa8N0caAEA+Kc11AQBgoGibyd6yqT4a6lNEpPjimw/KRER86W0HZ3aU8a6oLI3Pvf4VOQ9Mr3l4STrhmP6/SDB61Ih2P6OBNC8fgOKkEQOAHLr+sZWpvKJk6987CjAnTFueBg8ta/dxp573cDr/e8f0S9s+4dFlacvmhiivKNl6cSGXdrSoHgAUAnPQASCHyitKOgwqb3h85TZZ4oa6xg4zyP0RnI+5f1GaOH15qt3SGKWl2SgpyX1XYuxDS9L6NbWx7sUtuS4KAPSIq8wAUCCuf+ylgH17QX1fmjhtedq8qT523XNwPL1ifQzZqTxKSjJx7FEH5rw/MWHasnTsG3NfDgDoCQ0ZAORQR/Om2y6Edt2sFSmbyUTZDobDd3ce9se++q/0lys/uM3zrnlkSWpqfDlZX1fbGLvsVhkN9Y2RyWaickhZq8d39bUNTQeAl2kMAaCfVVXXpC2bG+Lz21nobUeBe28HtJNmLE9NjWlrNvzyuxem8oqXVpKvGFQSmzbWx/A9KqN2U8PWxzSXJTWl2LCuLo4/untz0S3uBgAvsYo7APSzzgSjHT2mqSlFNrvtXT0Ncttu5fa1d7+yVRC+ZXNDlJRk2x3OvmljfTTUNwm0AaCHcr+yCwAMMNvbRm2H93Vwb/PCccf94M7tbtHWWVXVNemKexamLZsbIiLiK/99SKZl8N2ynM+s3BCVQ0oNUweAHhKgA0A/qaquSW0D8JZ/72j/84iIbEnHMfDoUSMy/3fi4V0u12kXTt7mdZdVvxiDh5XHoMr2B9u1DMZHHr5rNDamuPK+Rb1ycQAABioBOgD0ofd/5q8p4uUh6M3/Nd/W8v8t7+vIjh7TnSz2Ia/ZLX74xymtguudhlfE5o31nT5G3ZbGKCvLdjlINyweAF4mQAeAPrTr3oMjov3Aufm2zgaofRXIfu3dr8yc9a03tzr2kJ3KY7e9Oi5729uH71EZmUxm63MAgK5zxRoACsD1s1am9Wtqo6KyJL745u6tlt5VXVkx/qa5T6aWw+878xxbrAFAazLoAJAD46cuS1feu+1w8EvvmN/uEPHyQSWRUor1a+pi3OSl/TbXu2bZum1uq6quaVX2quqalC3JbA20OzM0XnAOAABAzrW3WFxExFUPLE7jpy7bbvBdVV2TJs1ckTo6RledfPZDW49x+mVTWwXdOzr+hGnL01UPLN7mMZ0pV2+UHQCKjQw6AORAe5nj4XtUxsZ1dTt83qDK0tiwtjZWLVnb43K84yMHbf33vyct2Ob+K+9dlG54bGW7wXTlkNJ48bnNnXqdtqvVy5wDwLYE6ACQA80Z6paB63NPboxvvPfQHQauWzbVR1l5STQ19CwJXVVdk+64cWE0Z8FnPfiFbV57t70Hx3M1G7f+PXH68q1l/sRh+2Z23bOy3Wx48z7q46csTW2D82ef3BC/u/FxGXQAAADyV2eHh0+asTxdfteCHge5vxw/M42fsixNmLbt0Pq228BFRIyfsrTVbef+ZW6r4PvG2avSuX+es81e782B+hX3LEwREb8XoAPANmTQASCPtNwjvaN54KNHjciUlZdEWUVJj1/vF198faa0LBvZ7LaJ++ayzJv27Nbbhu5cEVXVNWn92tq4cfaqNOLAYa2eU1qWjdM+fkSmZdlHjxqR+eKbD8osnrs66uuaIiLiR59+rSHuANCGxhEA8sQ1jyxJkSJ22nVQq9s7u2VZd+d1T5y+PH3hyAPafW7zcVsG21XVNaluS2M8s3J97P/KXaK+rjHKytu/WFCzbF3UbmqI0z5+hD4HAOyADDoA5IkT3jIyc8IxI1sFsr29mNr/fO6v22TkOwrOm53317lp9KgRmZaBevmgkvjOhw/PRESseW5zbN5QH3W1jVvL3Fzu5ox6b74HAChWAnQAyKGW87xbDmfvamBe/5/geEc2rtv+HuVth9TXbm6I3fcZHNc+uqzVkPXm8o0eNSKTLcnGF954QOaz/7V/pm2599x3aFfeBgAMaK5oA0AvOLtqdvrB6Nd0u11tO0T96gcXp112r4yIvh/i3vIYG9bWRllFSaSmFOUVpVG7pSFKy166nl9WXtLrGX0A4GUy6ADQQ1894960ecP2M9NdUVVdk3bZvTIaG5r6LSA+p2pOmj/ruUgpYsPauhg0uCw++ep9M4tmvxBl5SXxmddumx0HAHpXaa4LAACFrm5LY/zii2/oleC15RDzTx2xX6eP2Tw/vLtB9MhX7xoREU2NTVE5pGzr7Wcc3zvvCwAAAPrMpXf2fB/yZu3tOd5V1zy8xN7iAFDADHEHgG6qr22M8/46t8dBcU+C8mZn3zw7lQ8q2e7+6QAAAFB0vvTTe9Ke+12aLvrXE70SoLcMqH934+PdOqagHAAKmznoANAJLbcYi4gYNLg0vvqLN8XKRWt75fgt5463nAPe3WN0pKq6JjU2NEVJadaK7AAAABSmvshQt8ye99bxOzpOy+Hvsu0AAAAUlPP/Pi+dOWnWDoPZUUeOy4th6e0dr21gLjgHAACgIJ05aVY666bZ6Q9/n7fdwPayuxakE39yd5ey4X0RoLc8poAcAAqHOegAsAM//fzrMhER3/rdg9sNdL/+nkMzpWXntZqr3hVV1TVp84b6iIjYtKE+vvrOQ7p8jCeXrot9D9ppa+C/bvWWOOGYkeaaA0AB0GADQA+96+NV6TVv3isu+uHbMhERe+53WXp21de71cZWVdekDWtrY/Cw8vjk4ft26xi//9Pjac/9hkY2m4mSkkwce9SB2nsAKAAabADoorYrukdEnPvnOamkNBunfuTwHrWtVdU1aUfZ96rqmpRSik8c9nIAf+OcVamkJBPV05+LbEkmDj5it8hmIz756v209QBQILK5LgAAFJrRo0Zk2gbRp338iExpWdea1bZzwy++tbrDIfRX3LMw3TT3ya3zyTOZTKvn125uiI3r6mPfg3eKEQftFJERnANAoRGgA0AveWbVhh4t+vbt/xmViYgYP2Vpmjh9eYqIuOHxlSnipb3R6+sbt14caHuR4OkV66O+rjE2rK2LzRvr49NHCM4BoNAI0AGgF5zz5zlp5aK1HS4Od/G/q9M3f/vAdoP38VOWprotDVFf1xQNdU1xw+MrU/rPM45704GZ+rqmGPvwkq3HuOaRJem3NzyW/vC3ualiUGnUbWmIsvKS2HPfoX2yZzsA0Les4g4AveDJJeti+B6V7d53xJuvTVs2N8T9tyzbeltzAN1ytfWKytKo3dwQmUzEqiVrY8SBO0VFZUlEREyY9lJGfcjwiq3PaWxoij32GRKbN9bHXvsPi5ZD7LuzijwAkFsCdADoBSMPHx5Ln3ix3fvmTDku8/2Pv/z37254PK19YUs0NaXIlrwUR2ciYtP6+jjxrS9vida8YNyY+xeljevqYve9B0dKEZn/PGL1s5tjw9raOPBVwyOTzQjKAaDACdABoBec/MHDOh0cn/6Z1+7wsb+6dma69pwZEfHSgnClZZloakqR+U90PnrUiMx3//BI2ufAYZHJZuKFZzZ1t+gAQJ5wpR0AesFvb3gsbVxbF7856ahOta1Hvfu69J5PHBIzH6iJ1xy9d5x7ytGZllusXf/YytTY0BSVQ8pizfObI5PJRLYkE+vX1EZDXVOPt3MDAPKPxh0Aesl5f52bHvzXsvjCd18fN178ePzpkv/psJ294p6F6e/XPBF7v2JYvP1DB8awXSoiImLT+rrIZDNRX9cYJaXZGDKsPCIiXnxuc1QOKY31a+pijxFDDGcHgCKkcQeAXrb7Ppekk886JurrGuPXX35ju23t9y+anJbNXxMNdY3xtg8dGLvvPTiG7FQeTY0vzUv/xGH7tnpey1XZBecAUJw08ADQB/542/w099FnYv9Ddo7Vz2yOt7z/FVsD61POfihVz3wutmxsiJPPPiY2rK2NisrSKC3LRlNjilWL18YBrxouEAeAAcYicQDQB/Y5YFjsc8CwiHgp4/2Bz/9t67Zqo0eNyPy/T/0l3ff3T2Q2rr8ujf7aEXHof+0e9XWNUVZeEvuO3DmnZQcAckOADgB9oGX2u+Xib4tmvxAREXf86WOZiIimphSnf/q1masfXJw2rK2LYbtUREVlaWzeWB9/mrMqNTWl+Mxr95dJB4ABIJvrAgBAMWsZnEdE/PCTr2kVbA/Z6aVF4L70toMzz6zcEDvvNijWrd4Ssx95OjasrYumphTXPLIkXTdrRWo5Dx0AAADooh0F1hWV57d7/zs/WpXGT1maLvrXE+nG2avSNY8sFaADQBGTQQeAPtSZrHft5lPbHcK+/yt3jvFnz4xMNhMvPLMpBg8t6/0CAgAAwEBQVV2zzdD0joL2t7z/xnTEm69Nl921oN37J81Ybpg7AAAAdFdvBdVnTpqVxj60JN04e6UgHQCKkCHuANDH2tvPvL3MeksHjhqTDnjVmFb3H3bknvHsqg2xcV19rwX9AED+EKADQD9oG1C3F7S3tKz6K5nl87+y9TE/u3p6ioiY+UBNNDWlqK9r7JuCAgAAQDHrzYz3eX+dmybNsO0aABQbGXQA6AejR43IdBRQdyXQrqquSXOnPhNPr1i/wyw8AFBYBOgA0I/aC8a7EmiPHjUiky3JRlOj5DkAFJvSXBcAAOi8quqatHjuC/H90UfIngMAAEAunfuXuenHlz8qhQ4ARUYGHQB6UfMQ9pbD1n917cw0fI/KqKgsjeef2hh77T80vvS2gzNV1TWpO/PIDzpseBx02PDeLDYAkAcMjwPIQ4cccXV65X/tHl/+2VEWAitAbYP0i2+tTkN3Lo/UFNFQ3xTlg0rihac3xZCdyuNr735l5o+3Vqd9Dtypw++6qromNdQ3RWlZNupqG6O8osR5AQBFSAYdIE986Iu3pH+M/3AmIuIVh+4Se+43NC75yeRcF4seOOum2Wnn3QbF4KFl0dDQFBWVpXHiW1+RueGxlWnYLhWx296DtwbzqxavjU9/+7Z048Xvz/zfif9Ir37zXnHkO/aNNc9vjtXPbopMJhMlpZkoLctGpgeh+Xl/nZuGDCuL0vKSGL5HpUAfAPKIRhkgj/zkikfT3EefjWNPe73AKQcuvrU6DR5aFnW1jbHnvkNb3deV76M56H565frYe/9h8fzTG2PoThUxaHBpt77X5qHwNzy+MmWymfj0Eft169y4ad6TafGc1bHXfkNi86aG2Gu/odHY0BSf6ubxAIDepUEGyDOf+87t6boL3qd+zhMTpi1Pg4eWtbptR0F2c4D+XM3GKC3L5kWm+vTLpqbDj9or1jy/Ob79P6MyF9wyL33nw4c7zwAgj2iYAWA7/njb/LT6mU2x2z6DY1BlaWSzmdhp10GtHtNe8F1VXZM2rq+Lui2NMXTn8vjMa/fPaZt75X2L0m57Dc75hQIAoGPmoANQ9Joz2h1Zv6Y26usao7SsJBobmmLT+vrY54BhsWrJ2tiyqT5GHr5rVA4ti6eWr499Dhi29XmjR43IVFXXpJaLwrV8rQ1ramPozhVRu6Wxz95bZy2dtzq++o5DBOcAkMc01AAMGC2D59GjRmTG3L8o7brn4IiIeHrF+nj+6U3R2NAUFYNKY9P6uhi+Z2Xsutfg2HnXQTF61IjML8ZOT7888cgdtp3Nr7Pm+c0REVE+qDSOfeMBOW1zr7hnYVr4+Atx7ilHa/sBIE/JoANQMK68d1HavKk+dt97cAwaXBbPP70xTnrnK9sdXt7RMUaPGpEZ+9CSdPndC9OLz22Or/z3S1nlMyfNShvW1MY5J3ccwO79imEd3dWuL73t4MzVDy5OuQ7Ou7vfOgDQvzTWAOS9C/4xLw0ZVh6l5dk44S0je9R2jZ+yNK1fUxffev+rMhERY+5blNavqY11q2vjjBPe0ON2se0e6LmWb+UBAACAiNjxfPSeHrsvj98Zl9+9MP3h7/PSjy6ZmtNyAABdl811AQCgP61avLZXj9d2kbhcZ6qff2pjlFdkY8Pa2lwWA6Dg5PoCKwDAgHLVA4t7rfPVHJjnU4fuF9fMSD8fOz1vygNQKL75mwfyrk5nYDIfDQC6oO1K8LksS0tnjJuRhg2viO/936vzpkwAhWDCtOVp/sznIiLizK+8UR1KTlnFHQC6qGVgni+LsG1YUxdnHN/xInf5Uk6AXKqqrkn1tY0RmYiy8pIYPWpE5vGHn4oDDxsee+/f/k4d6k/6kwAdALqgbXCeDx22S+9ckL7x3kPbLceER5dt7Vg2/xtgIHtqxfrYba/BUVZeEhERr3vbiBg0uLTdALyquiY1NjTFp47YL+d1PQODReIAoJu2F5xfed+ifguGB1WWxtUPtj+/vqQ0Gw0NTXHVA4vTsUcdqIMJDFhV1TXpqeXrY/gelfHv6xbEYw8/FRERmzfWx4vPbd76mBtnr2y1+GdJqZCJ/uNsA4Au2tFCQn/429xUUtK/sXBKEWMfWpIiWpfvc69/RWbLpob48tsPFpwDA8p1M1ekm+c9mSJeqh9rNzfEnKnPRPmgkjjosOGx575DIyKirrYxdtq1IiZMW562bG6I9Wvqth6jqrom9fbuH7A9AnQA6ILmYe3by55/9/9enfnS2/ovIF4+/8VIKcXMB2ranSv59fe0P/wdoJhtWl8fTy5dFxERa1dvibWrt8T8mc9FU2OK3550VGafA16ac75udW2sXLg21jy/Oeq2NEb5oJL414T5EfFSXZpSsgUb/UaADkBeyIfOz4X/fCJd/Z8sdHvyoYxtnffXuWmv/YfFrnsOjnd+dGRe7MUOkA922q0i9jt454iIGLZLRQweWhYf/uKoqBxSFhOmLU/337I0IiIymYimxhRrntscz67aEEOGlccHj33V1uOUlGQLdoG4fGy32D4BOgB5Idedn+N/dFdqqG+KL711ZLvlyNdVfHfdqzIaGpoiIv/KBpBLn3r1flsvWH757QdnKoeUxQGvGh6jR43INDWmeNsHD4yIlwL0tau3xG77DInGxqaYfPuKVsf59gdGFWzdql0oPFZxB2DAGnP/opTNZuLZJzfG6Z9+7Q47MfnW0amqrknP1WyM55/aGCcXcAeyt+XrxRQgtz51xH6ZquqadE7VnDRocGncfNnsiIgYunNF7PWKYfHC05ti35E7R8Wg0qj5z9B46G8aLnImX7YnAvrW2IeWpGw2E5F5KUvxxTcf5HffQ2PuX5TWv1gbQ3Yqj5Pe9UqfJ0An3PzEk6m+tjEee/jpOPKd+8YnD9830/K+TCYTDfVNUV/XGOterI2Otq8EAChYV963KF3zyFJz4Fqoqq5Jp1/+aDrpjPu69bmYUwjQfT++4tHtrjVyw+Mr09jtrEcy0Pz86unpdzc+7vPoJ4a4A9CnvvqOQ2Qg2njwn8siW5KNfUfu1O5ooktun59KSjKxaM7qmHHfk/HN374larc0RFNjimef3JirYgMUhd+edFSrOvfcv8xJe79iWKxbXRvPPrkhdt97SOy826BcFS+vNLdRLgz3H4vEAUAfGze59QiC8793TOa87xydaWhoio3r6lo97pyqOamsvCTKBpXGuN9Pj7v/PDozetSIzMa1dbFpfX0ccOgu5lYD9KLVz26OTCaicmhZlJRkY/3a2nh65fpcFyun2q7lod3pPzLoANDHSkoyccU9C1NFZWmkphQvPLMpTvvYEZlfnXhk5hdjp6cbHluZyipK4oWnN8X3Rx/RbifoK0YiAPSacZOXpsohpfHp1+yfee7JjVH32sZITRFPLl0Xr33L3gN6kTjrRAEAA974KcU9T9/wSCBfVFXXpD/NWZVunL1ya7106Z0L0vl/n9cn9VQh1X9X3LswFVJ5i5EMOgDkgWJf3b5YszE/u3p6KinJxBnHv6Eo3x8Um5vmPZm2bKqPF5/bEmtf2BIRLwXQTy1fH2tXb+n11yu0YPekd9oZJNcE6AAA3fTrLx2pMwsFpKGuMWq3NMaWTfUx6g17RETfXUAstOCc/GCROAD61ZX3LtJhoaDdOHtVunbqsjRx+nLnMhSYbEkmKgaVxOaNDR0+prcC65ReOkyxjiCib8igA9Dnxty/OFUMKon6usYoLS/JdXGgR0rLstFQn4n1a+p2/GAgr3z6NftnJs1YnvY5YFjMn/Vcq/uaF0frrYA6k8kIzgEAAKAjzRnylpnyH/xxSjr57IeMiiHnXNEBAAAGrKrqmvTskxti49q6WLVkXVxw2jFiJHLGEHcAtnH53QtT+aCSOPGYkZntzcXrj6F7LV/fUEEA+sLX33No5oTT707X/O7d2hlyqlMn4O9ufDyd/unXOlkBBoDmgLi+rjE2rquLxsYUJSWZqKgsjcaGpn7bDkxgDkB/aJ57nutyQMQOAvSxDy9JG9bWxS67DYrj3nSgk5Z+p8KE3Bo3eWnKZCLWvVgb3/6fUQJzAIrSOVVz0q3XLYi7qj6u3SG/nffXuRZLICfsHQkDS1V1TWr+L9dlAaB4tdfO/PG26nTC6Xdrf8g5V4jIS80Vp+wZDAyF8Js3ogegcHV08be5XlfHky+chOSdQuioAwOLegmguLRXrx972h3po19+9dbHqPPJBScdeUUnGMhHMisAxauquiY1NaXYsqkhVi5cE3u/Ylic+NaR6nxyIpvrAkBbOsFAvlEvAfSdXK8/MnrUiEw2m4nBQ8ti8LCy2LK5IV591Hjz0QEA8o1F6wD6X2/UvV05xoRpy1Pz/8c9sjT94e8WyiY3ZNABoAOCc4Dc6MzIpR3V0ds7RtvnHvvGAzI3zXsyDaosjRQpHnvo6c4XFnqRAB0A2mFNDID8sKMV2Dvz2B09t/l5G9bVRt2WxnjP6IO7U1ToMQE6ALQhOAfofX09Kqmnx89mM1E5pCxSilixcE0vlQq6pjTXBQCAfNA2KBecA/Su7tarnX1eT+rt+rrGKC3LxlPL1kdZRUmUVZR091DQIzLoAPAfLYPzjjIx5qUDFJ+y8pJITRFl5dl4avm6GHnYrrkuEgOUAB2AAa297X129DcAxSWlFBvW1UVDQ4qDDts1PvnqfY2iIicE6AAMaG2HtLcd6l5VXZNaDps09B2g+DQ1plj7wpbIZiOG71GZ6+IwgAnQASh6zVny171t4jaZ8JbZ8Qv/+cQ2wXn/lRKAXLh26rJUX9cYG9fVxb4jd3YhFgCgr4046IodzilvO9xdgA5Q/CZMW54u/ne1+h4AIJfam38OwMDQXP+fOWmWdgAAIJd2FJwL3AGK03UzV6Sq6po0fspS9Tx5xxx0AAas7c0zNAcRoDg1NaWor2uMoTtX5LoosA0BOgADzo6y47LnAMWpqromrXuxNpbMW13UF2K1Y4VLgA7AgCR7Dl1TVV2TLr97oU4/RWHPEUNzXYQ+pR0rXAJ0AAac9jousg2wfRvX18XX3v1KnX4KWmNDU+y6Z2WUlLY+lbUB5AsBOgADXlV1TZJtgO077qgD/UYoaFc/uDg9vXJDrHuxNubPfH7r7VXVNamxsUmQTl5Q0QJQ0CbNWJFefHZTfOt/RmnTAGjXb657LDU2NMXGdXWx9sXa+H+fPCQiWo+oumnuqvTJV++nLQEA6I7xU5elidOXy3gAsF2/njgr/ea6x1JExE+ueFS7AQDQm664p3cXqzrvr3PTBf+Yp9MGUCSqqmtSy2Hr+x9yZYqIeN+n/6KuJ2+Zgw5Awbn439WpcmhZrx/3Ox863NBGgAJXVV2T2ruIe8E/PhQRESf98s39XiYAALrA9lEAha+quiZd/eDidMW9C1N7i7413/bfH7lZnU9ekkEHgAjbRwEUgPFTlm4NrNsOYW/W2JDipHe2rtOrqmvSqec9nNa+sCUiIk44/Q19XlboDp0RAACgIFx8a3WKFLHzboNi0ewXYujO5fGDT7ymUzFNczA/etSITMt/92V5oatKc10AAOgtE6YtT8e+8QCdLYAiVVKSidLyklixcE3ULF8fH/jcoZ1+bstgXGBOvjLEHYCC1N6c8abGplwUBYAuas5gtzdEvdmY+xeln4+dnn5xzYytj1nw2AuxbnVtLHz8hXj1UXtu99hQiGTQASgIE6cvT7MeeCpGHDQs9th36Db3f+u3D6RnVm3s8nGvemBxSinFV/77ENkUgH7yzMoN8cvxM9OqxWvj/FvmpVM//PIuGlfeuyitXLQm1jy/Jeq2NMagwS+HLAeOGh6lZdl43Vv3iSHDyrc5blV1TZIdp5C1G6A7sQHIJ5feuSCVlGbj3O8c3WHbdOQ7940TjhnZ5bbry28/OBOh7QPoV5mIDWtro7GxKX514pGt6t6S0kw0NqQoLcvG/ofsHOterN16307DK6K0LBsLH38hTv2IrTEpPtsE6OdUzUl3/3lxLsoCAO36xnsP3WEnbOP6+h69RvPKvgD0vW+899BMR0PRVy5aG3vsOyTqaxtj6p2r4voL37e1DTjxrdu/EOtCKwBAEZgwbbk5iwA50jJY//5Fk9M3f/NAOvcvc9TLecb8fgCgX1xxz7aLzgHQtzqzWBz5y/fW+6ziDkDBmzi959nv3fcZEv973N91NAD6wannPdyqvi30oekDIVAdCO8RAOiBquqadOOcVWnSzBXd7jS07HB859yH0iW3z9cBAehjN85epa6FdthmDYCCM+b+xam0LBvrXqyNE95yUK9lXfYYMTS++b5XFXQWB6AQPPjPZbkuAgAA+caQPYDcGTd5aZo0c0V6y/tvVBdDmIMO0IpgDecAQP95ZtWGmHL7ynjktk8bvQQAUGh6O4BuebyLb61OAnQAIFdk0AHgPxrqmgp+JWEAoHBZJA6AnLngH/NSSUk2vv2BUe0GxZNmrkhlZdnYsqkhmppSHH907y0I155TP3K44BwAyBkBOgD9bsz9i1JpaTZKSrNx3JsObDcobjnU/PmnNsaw4RURUfh75QIAFI0L/jFva4ftnD/PMU8QgB4x5xwAyBcFNwe9ovLlpP+e+w7NYUkAKAYy8tB/LvznEy6IAWxHwXRKqqprUl1tY6x5fnN8/T2HFky5AQAAoChc/eDidO2jy9KY+xe74gpQYH5z3WPpinsW5n39PW7K0rwvIxSqT3zj3+mzp9zmNwbQCXk5xP3XE2dtrcTXvrAlajc1RHlFSS6LBEA3/ORz/5UpLcvGeX+b2yud84nTl/f6HuhV1TVp6E7lvXlYoIWbL/1A5hNff02uiwFQEAwVB6DPfeu3D6Q//vjt3Wpzqqpr0prnN0dpWTayJdk49o0HaLsAAACgq3qyKFRzhnvsQ0sMjwUAAIqX7aUAACB/5OUcdAAAAAAAAADoExOnL09n3TS73ZGsMugAAADQTzauq4uyDnYpsxIuAL3iG2fen1Y/uzmWzFsdU+/8bMG1L1fcszDtvs+QVreNHjWi4N4HAPlh7MNL0onHjNSOAAB0xVk3zU5XWykegF7U0RBmAAB24KoHFqfL7lqgMwVAr7BbDt1hDjowoGk8e9+HjrulID/TL7/94Ez5oNKw5zoAveGxh5/KdREAgIHuMyffVnAB7hnjZqTL7lqQXLABAACgoB39vhsKPrA966bZSfYcAIqPC/AADCgfP+lfqWWQ/pb331iUDaEGHgDy09k3z06X3DE/nX3zy4vztWy3C6UNt+z/AFVVXZOatw9q+W+AnmiuTy6+tTp9+39G7bBe+eNt89NdNy+KoTtXxIGjdolff/mN6iIAoMsuu2tBGjy0LJbPXxP7jtwpMtlMDB5SFo2NTZHNZqKkNBufOmI//YyBrFCu0hRKOYH8Neb+RSki4obHVxZtffL7Pz2evvLze1NVdY256gCQ5655ZEm6ftaK9POrp6fxU5elK+9dpO0eyHTegIHmvL/OTROnLU9X3LMwXXL7/E7XgT8dM60g6suvn3m/wBwA+tgfb5ufJk5bniZMW96jNvdzp96ern5wcYoQm9EOGRegmG2vjjvh9LvTp79169b7C7kuPOyN4wq27ABQKKqqa9KNs1elC//5RJo0o2eBOgAAANBNzRfz/zRnVbrmkfzYYaW/Eq6lvXmw5gJbcAwAIH+d+OO70zs/NjJKSrLx+Te8Qr8NyBstg+CmphQ7DR/UK8f9wOf/lj70xVFRObQsdt71pWM2x60/uHhKOvR1u0dFZUlsWFsXi+esjnNPObrdurHgFtg2lBsAIP+d+oeH9deAvCe27AVV1TXp8rsW9HhiPwADyzUP58cwNgCg55qTtz1J4vZHgJ5PFwF6dYh7s4JK+QOQFy76d3Vau3pLrosBAHnhY1/5Z/rLmP8t+Lhq9KgRme4OC++LwPnCfz6Rdtt7cNRubogvve3gzMTpLyeV82HKdjZXLwz9IZ+uhgEde/uHb0qTzpsZ3/nQ4QXfEekt6i+Agev4H91V8MH5JbfPTxvW1vboGKkp9XqwvGFtXTQ2pNi4ri4iIr5w5AGZ5osIEUWcbP7iD+5KP7p0qs4FOaNzCxQya7oAUGj+78R/bG23fnfj4+mif1enK+5ZmFpmqTujo2Hxvdk2Hvf9O7ce509zVqUbHl+ZF21ur18dGD9laZpxf01c+P23FueVB3pFf61+2PJKWFd+zL1Vtt/e8Fj68Wf+y28BOqngVkbtQ82fRUefyZ77XpqeffIbPisA8lLLfvip5z2czv/eMZn27mv7vHGPLE3DhldER/f3pktun5+G7VIRWzY1xFffeUhetKmZH14yJe2866D48Wd7J4j4+djpKZvJxBknvCEv3iD5qb8D9IjO/8DbC+S7W9ar7l+cnlqxPiJF/OzY1/lNANvVsm4c98jSlC3NxHFHHajuAKAotReoj314SWqob4qvvqN7AbOL/W185uTb0qnnPZyO+8GdeTFEoK8ZfsiObG8ozqV3LnD+QB7p7Tq9K6vXtnzMhGnLDW8HOkVdQb7p7DnZ09Xdd3Tc3jxmf+r1VdxvuOj97V6tOOXsh9LII3aNUz542HavZvzwkilpl90q4/TPvNZVD4pCyyt4LSuLZ5/cEJlMJs6cNCsdduSexbsgBfSRvrhCntKO2/O2V/vbjtRpWa7tle/sm2eng4/YLdY8vzl22b2y1WMHDy1TJwDbVfQLWjEgjB41InPVA4t7NZju6tTWfNPnP+jTL5uadtt7cGQymfjeR1+tAoE2ujMMHwayvvzNdDbo7+sytHdcQ/aAZuoD8tnE6ctT5ZAdX2i+7K4FqaQkG0+tWB+/OO71OWnP81FBFhoAOuvSOxakvfYf2qNjtDcSpq+2ZGnvmIXc0QBg4NlR+zhh2vKUmlIc96YDM2PuX5S+8t+9u0CbdhMoKs1zd35/0+yCnsMDEa3nuP386umdPp9bnvt9NU+uvdds7zWufXRZ+tlV0/wWYYDSFtORfD43tle2y+5akCZOW56uuGdhn5Q/nz6XfCoLAPSqXDVy/bXgTCEsbFMIZYRi4zdHZ/TXxeSu6KgsH/3SP9Mvx89M/3vc3/usrO299u9vfHyb27r6mZ1yzkNdutifT9/HNqqqa9Ivxk5Pl9w+P50xfkb+FhQA/kNwDuRKIdQJhVDGgShf2pRclqM7q8l35jmjT/pXnwbo2a48uKeWPrE6DnjV8BiyU3ls2dgQ3z7rwZyfNACQD0aPGpF5ZuWGXBdju9718SrtNvSjQphDWwhlHIhGjxqRabuWSS4C5fZ2PMlHLT+vHZX1HR8d2aXjduaYOXf6ZVO3FvAnVz6a34UFYMDL+4YVAPJcf7elXcmgt3dbVXVN+tOcVVsvbFzzyNI0acaKdO3UZV1+H/kyogEAioJGFQB27MbZqzpsL/s7SO3pa42bvDTd8NjKdNldC9Jldy1o91g/u6rzi882lylv+xQX/bs6PwtGnxs3eWn6wcVTfP8AAFBE2tsBpaP7C0FfBNR5G6T/rp0V9BgY9trvsvw8KQEAgF6TjyvLd0dfBOm9eTzy1I8vN5+f3FHRQHFr/o37rQMwULW92HDxv6vTdTNXaBd7zzmpqrom/eKawt/y7fsXTU5GJZArOuwAABS7tgF6n/WBf3Tp1AHZua6qrkkf+8o/0zd/+0DBvv8fX/Fo+tWEmSki4vxb5m2zh1/LFfOhrwjQAQAYqMY+vCTd8PjKXukPZyMiDjtyj944VsG540+LoqKyNF58bnN89Rf39vgDPe+vc9N3z3+kXwOVI9+xb7z6qL2iqromDR5WtnUPv+ef2hhnV80WNAH0oa/96v500b8segoAudBekujrv76/37dzq93cEGXlJb2StMpERPzwkinpla/dPYbvURktN7TvTxf+64lUWpqNxsYUu+w2KI5704E5KUdPnDlpVjrosF3jyaVr4wejX1Nw5Yfuaq6MRo8akamqrkm5qkegv1VV16S1L2yJnXcblLP2EwAGqrb9ztMunJx22X1QzHrwqbj5sg/0W7t84+xV6dOv2a9XXi8bEfGm9+wfw/eojJql63rjmN1yygcPy9TXNcaGNbXR1NQ/Fz0uuGVeuvCfT3TpxT75zVtbPf4jJ/5j699rX9gSV/5yajyzYkOc//d56eqHlsiqMCA0j9xo/neuywP9ZfSoEZkT3zrSOQ8AObBu9ZZWf597ytGZNc9vifd+8pAYP2Vpv8Vi7QXn3V29PnP6ZVPTyMN3ja+845CcdjBaZuD66zUvvXNBqqgsjS91snM1Ydry9O+J8+O6C96XiYj46Zhp6cyvvLHVc797/iPpD6e+JfPN3z6QLvnx23XaikhPhqwIWgEAoPfkIn7sqrbxQ6fLmusFnnKxN94V9yzsk9f7wvfukDUHAADoZ80x5clnPZROu3CyuKw37LnfZenbv3+wTz/MS+9Y4Msa4HJ9UQroe+f9da7fOQDkSFf62y23i/71xFnpD3+bm37/p+5vIf2ln9yjD1AocpGtJ385H6B4/fG2+X7b/aSquibdNO9JnzcAvebU8x4ekO1KNtcFaPaNM7e/HP4vrpmRvvGbnu1Xfu5fZFNonyC9Z3x+5FJH59+33v+qvJ2TVmzWPL851jy3OdfFAKCInP+9Y7Tj/eWif1encZP7dlW9397wWDruB3e2+xqCCbZHVh0Ki99r7k2cvjxd87CdSwCAbujtACzfO4cDdXhIdzSfG4J0KBx+qwBAscibIe6/u+HxdPwP70pveu/1fd7R6s2l+C+7M/8XnHv+qU0x4dFl6bc3PJb3Zc21fN6mAehY2yBd0A70Jxf2AXpooFWkP/jjlAHzXntLe5n0QjtnBtp5zsDV3fP8Te+9Pu2536V+IwAA+eqcqjnpXR+vSmeMm5F+fPmjOm4DXHPHv5CHvxf6hQbYEec0xaovzu3vnGvqG0Bf0B/pI78cP7PDD/aCW+b50PvRm//fDen7F03Oi8+8bYBeiIF6s0IuO7SnM+fzxbdWO+f72MjDr/YZ95PTL5uazpw0q1uf99d+dZ/vCYDicM3DS9Lvbnhcw9ZPjn7fDelrv9r+Fny5IsiFwjJ+ytI04dFlafyUvt1FBPrCF394V6vz9uu/vj/9ekLXA3TtFgAwIOj0QH675I756cp7F/md7oC6LP+88V3XpY9/9V++lzzhNwL0JStWQy9p2WBbDR4oVL1Rl130ryfSviN3Vhf2wHHfvzMd+rrd46eff53PEKAHmts1bRJF79qpywzxBihS3a3fz79lXrrk9vnah17wqW/d6jME6Kb+WjNKe0fONZ/o4yYvTROnL3dCArDVaRdMTpfcPl/bQN7TqYb81PzbPPb7dxbUb/QbZ96fvvDdO/q2zCouWir0lctzzecG/asYdlwoVD+5cprPm7ymTgB6U1V1TfrZVb3T9pX2xkHouV9PnJXKK0riuZqNce4pR+fl/AjzNnquqrom+Ryhf4weNSKjE54bf71qXq6LAO0yFxXoC1s21cd+B++c62LQF86pmqMzCUDBG32SVccBGDi+9fsHtXvF6syJXd/XlMIlwwcUo5PPejAd/6O71G8A0AXZXBeAbf30C/27pcqvJ85Ke4y4VCcqRwyzA4pRJpMx3I+cswYFAAXn0Ndd027D1V6j1vJvDV7v05EAisXnv3tH+tlV09Vn5IT2FAA6YBVlgIFp/JSl6n0AgHxy/WMrBefd5MIGAADkL311oBWVAgC95atn3KdNAQAAAAAKz2dOvq3XLm5axR0KnAw6AADkzspFa+OnY6YVTp9cAJFfTj3v4fTTMdPSZXctSN/+/YPpl+Nnbv1+Lr97YbrinoW+rwJjrjoAPfXt3z+Yvv37B/O+LdHeAfnmN9c9pl6iZy785xPp7KrZ6dy/zE2fPaX1kIxrpy5L598yb2vAd5L5aPQCHSooLmPuX5QmTFueJkxb7rddJE4972HfJQDkwpkTZ6WL/lXdYUP8ro9VpaseWJyO+/6drR7T9m/yV75l1fOpLEDv8dsGYCBq2f795Mpp6ZRzHup0e6jtpEu+d8Ej6eSzOz7BBvIJ9blTbx+w7x2gPVXVNemGx1eqG+kT+XaxGaCtU855KP3g4inp62fe3+n4Sb1Gt3zkhH+0OxdtIDeWYx9akrYXpN84e9WA/Fx2ZCCfMzAQXPCPeSlChwOAgeesm2ann1y54wXivvC9OzrVRlrFnQ79/ZoPZS7+0dsybW8fPWpEZvSoEZli74hd9cDi9I0z70/v+ljV1vdZX9cYe+03tMPn1G5uKKgOqsAZ6A3f+dDhmYiX2odclwUA+spPx0xLZ06alSIizv/7Sxen16+pjZLS9pu/ln3to969X6deQ4BOtxVzR+wt778xzZn6TFz60//OHPWel39MJ73rlZnzv3fMNu/7insWputmrkhDdiqPTevrtnvsax5ZmjcBcUff4fYC9+4E9MV8rgAAUDi+/LN70nfO7d6imLVbGqO0LBs/vGRKikzE8T+6K61YsCaWz1/T7uNHjxqRqa9rjK//+v50yv8e1qn+cFYGjc76w9/npR/+cUqPzpUv/+ze9OsJs3r9fPvOuQ+n3934eK8d95HbPp254D+B+NnfevMOf0xDdy6PiJd+hMcedeB2H19SkolxkzsXpF83a0WaNKNvV0huL3huvq29+qG7oycE6VC8zr55tn4EAAVh8ZzVsce+Q7r13E3r66KsvCSG7VIRr3jlLvHOj46MXfaojPFnvafDfm5ZeUmMesMerW7rKAa/7M4FKSbNWKFRpd/9oE2gf9PcJ9PEacvT+Cm9l10+/5Z56YxxM1JExDs/enOvn+eX3bkgXfjPJ1JExI1zVqUbHuvcIknXzVyRJs1Yka59dFmnHj9pxvJ03cz++502Vxgu3AGd9cfb5qsvACgYJ5/1UBrXyVGtVz2wOEVEnH7Z1PTFH961dXj7OX+es7W/vL2+86+unZkuu2vBNve395yrH1ysPe1tgpodu/mJJ1PLgPmGx1emMfctSuf+ZU666F/V6Q9/m7v1vp9dNb1bn+f5t8xLP77i0dTy756Vevs6mxFvNmHasjRxeucy42MfXtLpx/am9s7lHQXvzn8AOkubAeTSKdvZtaqlc/48J0VEfObk29L3zn8kRUScMW5G+vx370jbm7oq6VUAfDkva/lZNC/C9vOx7QfjJ/747hQR8esJs1oNYz//lnnbPeF/0iJA7w0n/fK+Lh1v3CNLU/MVt7Yuv3thmjCt/4PuvtT2CmLL78a5DwBAIfrBH6ekM8bNSF/43h3px1c8mqqqa9LFt1anz33n9vSTKx5Nb/3gn7rdzxXEk5fOqZqz3RPy9MsfTadfNrVX55j3h6seWJyundr5THlPXXnforz4fH5w8ZRtKppfjp+ZF2UDAIDtaS9YvuAfT6S3fvBP6TvnPpzO/cvLo32vuGdhq35vZxNUVdU16aa5q9KNc1Zt87zS3noj0F0lZdvfTOB3Xzuq4BYXGzd5aSoty0ZJaTbqtjT2+vEnTl+evnDkAa0+l9LS/NiUYfmCNXH2t1svrHfEm/eKquqaZKE4AADyWdv+6vcueCQ9s2pDjHr9HnHBaa13czrpXa/cbt+2vcWWW/7/7R++Kekj06vaXiVq+19njvGVn9+bl9nVE06/u9vluuCfT6TL717YZ+/rulkr0jWPLNl6/DH3LUpdnQffFz58/C3tfv9V1TWdXogDuqOv15kAus/QTaAYfO+CR9KPLp2avtzD2OWsm2abCgpddco5D6Vxk5emb/72gbz8wUxqs6r7pXcsyKtyjn1oSTpz4qxtLt7kskwUt97cAQIAGHg+9MVb0h/+Njd1tO7UWTfPTj+5clr69cTubRn9zd+0H1dUVdekljurGeJe5FoGRS33tm77OMMqWisrL4njjz4obz+TxoamVn9/4/8dmldl3Xm3QTH59hXb3G4ID33hhsdXpvq6prjsrgVp2C4VsXFd3Q6HnAEAtPSP8R/OrFt9U3r36IPj+lkr0mdf94pWfYkffuI1mZ+OmZaG71HZreNf8pO3t9s3GT1qROaM8TMkGoCXTJrR94vYyZ7TlybNWJEmzVieqqpr0vWPrUzjpyxzvkE/UscDxeS0iyantlNdP/3t2/q0nnvb/3Z/JXigH/RXZ+f6x1amCdOW52SfdehNEx5d1uE2fwAAPXHKOQ+16mfkujxQ1Fr+yH46Zloa+9CSnP7o+vOHf83DS9LFt1b3eYCuIqO3THh0WRo3eekOFx0UqEPv83sC6FtV1TXJHD3IM80doGKaq12M74ncGT9laarb0hhfecchzicAoCh8+Wf3pP966z65LgbQVjFmKGQy6St/+NvcrefVpBkr0vWzVjjPAICC9M3fPiCDTnE5/+/z0t6vGBqNjSm+cOQBzu88YfV2+soV9yxMgwaXRmQykclElJWVxGdft79zDQAA8sV1s1aktnuFb8/1s1akax+18nNfkT0HAIAdsw86RelzbfYt3JG6uqbIZjNx7dRlKZOJOPaoA2Xg+oBMOuRGZy+S9eXv0+8fAADyiEw6xebmJ55M181akcZP2f6q8lDo1N8AAEVGB49i5LwGAHqLIe4A0AOGbQM90fIin/oEAOhXso0A5IsJ05b3e5vUvPWoLUiB9sigU/R+csWj6TcnHeWKNADQSn1tY4x9aEkqqyiJY9/Yd9uztg3EZcqBjgjQKWpnjJuRajc35LoYQBdZ8RvoD5VDSqO+vqlPg/MIATnQeQJ0itrfxj4RM+//vEYRCoThnkB/+mwXt2UF6GsqJaBfNQdgsgk0G/vQkpTJZqKxoSmG71EZEc4PBoYJ05anlFIcd9SBRXG+V1XXpC2b6qOxIcWWzQ1RXlESKUWc8JaDiuL9AfSHbK4LAH1h/JSl6eoHF8vE5SGBFy2d99e5KaUU2WxEaVk2Ro8akXGOMFC8dO4X1+k+aHBZHPemAzMVg0ojk8lESUlxvT+AvmaIO0Upk8lERaXTG/LZaRdOTpVDyyKliPrapvjyfx9c8D35STNXpM+/vvWQ2WunLksREU1NKY4/emBnEo2gae24ow7MjJu8tOAvJrf3vQ7duTxqNzdEwb85gH4mgqEolZRmo6G+MdfFALbj3FOOzkREjJu8NBXDhKuxDy9JqWnbcOS4N3U8fLm9OffFHrwW+/vrqmK9aON7Buiegqo8u7p4kMZh4Jrw6LJ0bJHM6YOBYMz9i1LFoNLtBrO50JWM77WPLkuZTKZHq0FbvR4ABjadAABybtzkpamkNNvnWx11VX9muAfC8O8/zVmVPnXEfkX7/gCgpwxxByDn8nWY7+hRIzLXz1qRsiXZKC3r+3VVizk4v/zuhWnD2rpcFwMAAID2XPPwknTVA/m948KkGcvTpBkr0g2PrdxhOcdPWZYuuX1+Xr8fyIXvXfCI3wVAJ9hmDYCcOeGYkZnKIfk9mOvzbzgg09TUFBvW7Tj7my3JxKAhZf1QKgrF2IeXDOjA9CMn/CP9/k+Pp/O+85bMuX+eM6A/C4DOKNqhdADQ38ZPXZay2ZcWihsIc8rZsbEPLUll5dkYPKw8UkqxeUN9DLRFTC/6d3UqryiJr737lQPqfQN0R36nLQCggHwxz1ahJ/c2baiPbEkmBg8rj08ctu+APD9O/sCoAfm+AbrDEHcAtququiZ1dZtLXiJ7TiYTMWhwaax+dlNcO3WZ3xEA26XjADDAtQy+WwaUHd0O5J/xU14K/r/4ZqM4AAqZIe4AA0xHe3u3lykXmENhyGYjmpok6AEKnY4XwAAhUw7Fa8K05amsPBtl5SV+xwAAkM/MI4fOK9TfS1V1Tbp53pMFV24AAADYRqEG5wAAAFA0BOcAAACQY4JzKGx+vwAAUAQE5wDFr6q6Jv3o0ql5X9db5RMAGLCaA3MrnwMMDFfeuygN3bk8MplMRCbis/+1v/ofACDXZM4ByDeuFgAAA0rLoFzmHAAAAHJE1hygcKizAQCgj+hsA3Qsm+sCAAAwsAjSAdpn3hVAH6iqrknmtpILHQU+o0eNyLR3n/OUXFBHArRPxQgAObK9gLntfX0RzNhijFwRoAMAAEAesMUdQPtcuQQgb7TMqnUlu9zyPqAwyKIDAAAUqeasrMxsYfA9AWzLVUsAoKgYYVEYrIEAsC0VIgBQ9ATt+ckwd4DWVIgAwIDTMmAXIOaOLDoAAADkCXPRAV6WzXUBAAAAgIjSXBcAAPpKIQyfbZs9zOeyAgB9SycAgKKSzwHv5XctTIOGlMbxRx+0tUwWyQIAmukQAFCQ8jkQBwAAgAGhqromWVgKAAAAAAAAAAAAAAC6xZB8AGBH7IMO0I8EaQPTmPsWpWdWbch1MQAAAAAAAAAAAAAAAAAAAAAAAIB8V1VdkyxcBwCQHzK5LgBAMbjwn0+kU/73sIKoU9sG5KNHjSiIcgMAFDudMoBesr3At6P7mm/vyyC5P14DAICe01kDKDIy5AAAAAAAAAAAAAAAA4rVzwEAACAPCM4BAOht2VwXAAAAABCgA3SZ7DkAAADkAQE6AAB9oTTXBQAoFFfetyitfmaTfcUBAOgThrgDdNLk21bEhrV1uS4GAABFSgYdoBPO/cucNGyXilixcE2uiwIAAAADm7nnAPlh0owV6frHVib1MlBsDHEHAKCgvPjc5iivKLEmCADAQCVTAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSlV1Tbr5iSfT9h5z7dRladzkpdt9DEChy+S6AAAAsCNV1TVp9bOborQ0GyccM1IfFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyHdj7luUJk5fbp90AIBiMW7yUp07AAByIpvrAgDkkyHDyqKqukaQDgAAALl2w+MrDZMEAKDfyaADtHD53QvTxvX10dQoPgcAoH8J0AFaGDKsLDIRcdybDszkuiwAAAwsAnSAFkrKXqoWJ0wzxB0AgP71/wGi52Bq5I+cMgAAAABJRU5ErkJggg==\n",
      "text/html": [
       "<img style=\"margin: auto; border:1px solid\" src=''/>"
      ],
      "text/plain": [
       "<xarray.Image (y: 500, x: 1000)>\n",
       "array([[0, 0, 0, ..., 0, 0, 0],\n",
       "       [0, 0, 0, ..., 0, 0, 0],\n",
       "       [0, 0, 0, ..., 0, 0, 0],\n",
       "       ...,\n",
       "       [0, 0, 0, ..., 0, 0, 0],\n",
       "       [0, 0, 0, ..., 0, 0, 0],\n",
       "       [0, 0, 0, ..., 0, 0, 0]], dtype=uint32)\n",
       "Coordinates:\n",
       "  * y        (y) float64 -6.959e+06 -6.914e+06 ... 1.533e+07 1.537e+07\n",
       "  * x        (x) float64 -2.002e+07 -1.998e+07 ... 1.998e+07 2.002e+07"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "cvs = ds.Canvas(plot_width=1000, plot_height=500)\n",
    "agg = cvs.points(df, 'x', 'y', ds.mean('fishing_hours'))\n",
    "img = tf.shade(agg, cmap=['lightblue', 'darkblue'], how='log')\n",
    "img"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T15:01:21.984625Z",
     "start_time": "2019-03-08T15:01:21.941599Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<xarray.DataArray (y: 500, x: 1000)>\n",
       "array([[nan, nan, nan, ..., nan, nan, nan],\n",
       "       [nan, nan, nan, ..., nan, nan, nan],\n",
       "       [nan, nan, nan, ..., nan, nan, nan],\n",
       "       ...,\n",
       "       [nan, nan, nan, ..., nan, nan, nan],\n",
       "       [nan, nan, nan, ..., nan, nan, nan],\n",
       "       [nan, nan, nan, ..., nan, nan, nan]])\n",
       "Coordinates:\n",
       "  * y        (y) float64 -6.959e+06 -6.914e+06 ... 1.533e+07 1.537e+07\n",
       "  * x        (x) float64 -2.002e+07 -1.998e+07 ... 1.998e+07 2.002e+07"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "agg"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:40:31.265012Z",
     "start_time": "2019-03-08T14:40:31.229609Z"
    }
   },
   "outputs": [],
   "source": [
    "bound = 20026376.39\n",
    "bounds = dict(x_range = (-bound, bound), y_range = (int(-bound*0.4), int(bound*0.6)))\n",
    "plot_width = 1000\n",
    "plot_height = int(plot_width*0.5)\n",
    "\n",
    "cvs = ds.Canvas(plot_width=plot_width, plot_height=plot_height, **bounds)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:41:26.965515Z",
     "start_time": "2019-03-08T14:41:26.821411Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/html": [
       "<img style=\"margin: auto; border:1px solid\" src=''/>"
      ],
      "text/plain": [
       "<xarray.Image (y: 500, x: 1000)>\n",
       "array([[255, 255, 255, ..., 255, 255, 255],\n",
       "       [255, 255, 255, ..., 255, 255, 255],\n",
       "       [255, 255, 255, ..., 255, 255, 255],\n",
       "       ...,\n",
       "       [255, 255, 255, ..., 255, 255, 255],\n",
       "       [255, 255, 255, ..., 255, 255, 255],\n",
       "       [255, 255, 255, ..., 255, 255, 255]], dtype=uint32)\n",
       "Coordinates:\n",
       "  * y        (y) float64 -6.959e+06 -6.914e+06 ... 1.533e+07 1.537e+07\n",
       "  * x        (x) float64 -2.002e+07 -1.998e+07 ... 1.998e+07 2.002e+07"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tf.shade(agg, cmap=['red'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:06:48.560045Z",
     "start_time": "2019-03-08T14:06:48.514054Z"
    }
   },
   "outputs": [
    {
     "ename": "AttributeError",
     "evalue": "'str' object has no attribute 'insert'",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mAttributeError\u001b[0m                            Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-6-8bbceb67a680>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0ms\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'string'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0ms\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minsert\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'a'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;31mAttributeError\u001b[0m: 'str' object has no attribute 'insert'"
     ]
    }
   ],
   "source": [
    "s = 'string'\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "ExecuteTime": {
     "end_time": "2019-03-08T14:03:17.742609Z",
     "start_time": "2019-03-08T14:03:17.704376Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<script type=\"text/javascript\">window.PlotlyConfig = {MathJaxConfig: 'local'};</script><script type=\"text/javascript\">if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}</script><script>requirejs.config({paths: { 'plotly': ['https://cdn.plot.ly/plotly-latest.min']},});if(!window._Plotly) {require(['plotly'],function(plotly) {window._Plotly=plotly;});}</script>"
      ],
      "text/vnd.plotly.v1+html": [
       "<script type=\"text/javascript\">window.PlotlyConfig = {MathJaxConfig: 'local'};</script><script type=\"text/javascript\">if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}</script><script>requirejs.config({paths: { 'plotly': ['https://cdn.plot.ly/plotly-latest.min']},});if(!window._Plotly) {require(['plotly'],function(plotly) {window._Plotly=plotly;});}</script>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<script type=\"text/javascript\">window.PlotlyConfig = {MathJaxConfig: 'local'};</script><script type=\"text/javascript\">if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}</script><script>requirejs.config({paths: { 'plotly': ['https://cdn.plot.ly/plotly-latest.min']},});if(!window._Plotly) {require(['plotly'],function(plotly) {window._Plotly=plotly;});}</script>"
      ],
      "text/vnd.plotly.v1+html": [
       "<script type=\"text/javascript\">window.PlotlyConfig = {MathJaxConfig: 'local'};</script><script type=\"text/javascript\">if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}</script><script>requirejs.config({paths: { 'plotly': ['https://cdn.plot.ly/plotly-latest.min']},});if(!window._Plotly) {require(['plotly'],function(plotly) {window._Plotly=plotly;});}</script>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Data manipulation\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "# Options for pandas\n",
    "pd.options.display.max_columns = 50\n",
    "pd.options.display.max_rows = 30\n",
    "\n",
    "# Display all cell outputs\n",
    "from IPython.core.interactiveshell import InteractiveShell\n",
    "InteractiveShell.ast_node_interactivity = 'all'\n",
    "\n",
    "from IPython import get_ipython\n",
    "ipython = get_ipython()\n",
    "\n",
    "# autoreload extension\n",
    "if 'autoreload' not in ipython.extension_manager.loaded:\n",
    "    %load_ext autoreload\n",
    "\n",
    "%autoreload 2\n",
    "\n",
    "# Visualizations\n",
    "import plotly.plotly as py\n",
    "import plotly.graph_objs as go\n",
    "from plotly.offline import iplot, init_notebook_mode\n",
    "init_notebook_mode(connected=True)\n",
    "\n",
    "import cufflinks as cf\n",
    "cf.go_offline(connected=True)\n",
    "cf.set_config_file(theme='white')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Analysis/Modeling\n",
    "Do work here"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Results\n",
    "Show graphs and stats here"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Conclusions and Next Steps\n",
    "Summarize findings here"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "hide_input": false,
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
